NDK: Last cleanup of the platform headers
- fix a declaration omission in 3/<grp.h> - add missing 8/<err.h> - simplify 8/<stdio.h> - update 9/ headers to the latest Bionic versions - fix a typo in android_native_app_glue.h - use __BEGIN_DECLS .. __END_DECLS whenever possible. - remove C++-style comments from headers Change-Id: I58b98b3973cde494436206194ba33416a11ca8ee
This commit is contained in:
@@ -56,9 +56,9 @@ struct group {
|
||||
|
||||
__BEGIN_DECLS
|
||||
struct group *getgrgid(gid_t);
|
||||
struct group *getgrnam(const char *);
|
||||
|
||||
#if 0 /* MISSING FROM BIONIC */
|
||||
struct group *getgrnam(const char *);
|
||||
#if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XPG_VISIBLE
|
||||
struct group *getgrent(void);
|
||||
void setgrent(void);
|
||||
|
||||
90
ndk/platforms/android-8/include/err.h
Normal file
90
ndk/platforms/android-8/include/err.h
Normal file
@@ -0,0 +1,90 @@
|
||||
/* $OpenBSD: err.h,v 1.10 2006/01/06 18:53:04 millert Exp $ */
|
||||
/* $NetBSD: err.h,v 1.11 1994/10/26 00:55:52 cgd Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1993
|
||||
* The Regents of the University of California. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)err.h 8.1 (Berkeley) 6/2/93
|
||||
*/
|
||||
|
||||
#ifndef _ERR_H_
|
||||
#define _ERR_H_
|
||||
|
||||
/*
|
||||
* Don't use va_list in the err/warn prototypes. Va_list is typedef'd in two
|
||||
* places (<machine/varargs.h> and <machine/stdarg.h>), so if we include one
|
||||
* of them here we may collide with the utility's includes. It's unreasonable
|
||||
* for utilities to have to include one of them to include err.h, so we get
|
||||
* __va_list from <machine/_types.h> and use it.
|
||||
*/
|
||||
#include <sys/cdefs.h>
|
||||
#include <machine/_types.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
__noreturn void err(int, const char *, ...)
|
||||
__attribute__((__format__ (printf, 2, 3)));
|
||||
__noreturn void verr(int, const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 2, 0)));
|
||||
__noreturn void errx(int, const char *, ...)
|
||||
__attribute__((__format__ (printf, 2, 3)));
|
||||
__noreturn void verrx(int, const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 2, 0)));
|
||||
void warn(const char *, ...)
|
||||
__attribute__((__format__ (printf, 1, 2)));
|
||||
void vwarn(const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 1, 0)));
|
||||
void warnx(const char *, ...)
|
||||
__attribute__((__format__ (printf, 1, 2)));
|
||||
void vwarnx(const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 1, 0)));
|
||||
|
||||
/*
|
||||
* The _* versions are for use in library functions so user-defined
|
||||
* versions of err*,warn* do not get used.
|
||||
*/
|
||||
__noreturn void _err(int, const char *, ...)
|
||||
__attribute__((__format__ (printf, 2, 3)));
|
||||
__noreturn void _verr(int, const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 2, 0)));
|
||||
__noreturn void _errx(int, const char *, ...)
|
||||
__attribute__((__format__ (printf, 2, 3)));
|
||||
__noreturn void _verrx(int, const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 2, 0)));
|
||||
void _warn(const char *, ...)
|
||||
__attribute__((__format__ (printf, 1, 2)));
|
||||
void _vwarn(const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 1, 0)));
|
||||
void _warnx(const char *, ...)
|
||||
__attribute__((__format__ (printf, 1, 2)));
|
||||
void _vwarnx(const char *, __va_list)
|
||||
__attribute__((__format__ (printf, 1, 0)));
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* !_ERR_H_ */
|
||||
@@ -307,7 +307,7 @@ char *cuserid(char *);
|
||||
FILE *fdopen(int, const char *);
|
||||
int fileno(FILE *);
|
||||
|
||||
#if (__POSIX_VISIBLE >= 199209) || 1 /* ANDROID: Bionic does include this */
|
||||
#if (__POSIX_VISIBLE >= 199209)
|
||||
int pclose(FILE *);
|
||||
FILE *popen(const char *, const char *);
|
||||
#endif
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
#ifndef ANDROID_ASSET_MANAGER_H
|
||||
#define ANDROID_ASSET_MANAGER_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
struct AAssetManager;
|
||||
typedef struct AAssetManager AAssetManager;
|
||||
@@ -130,9 +130,6 @@ int AAsset_openFileDescriptor(AAsset* asset, off_t* outStart, off_t* outLength);
|
||||
int AAsset_isAllocated(AAsset* asset);
|
||||
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // ANDROID_ASSET_MANAGER_H
|
||||
#endif /* ANDROID_ASSET_MANAGER_H */
|
||||
|
||||
@@ -21,9 +21,7 @@
|
||||
#include <android/asset_manager.h>
|
||||
#include <jni.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
/**
|
||||
* Given a Dalvik AssetManager object, obtain the corresponding native AAssetManager
|
||||
@@ -33,8 +31,6 @@ extern "C" {
|
||||
*/
|
||||
AAssetManager* AAssetManager_fromJava(JNIEnv* env, jobject assetManager);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_ASSET_MANAGER_JNI_H
|
||||
#endif /* ANDROID_ASSET_MANAGER_JNI_H */
|
||||
|
||||
@@ -17,12 +17,11 @@
|
||||
#ifndef ANDROID_BITMAP_H
|
||||
#define ANDROID_BITMAP_H
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <stdint.h>
|
||||
#include <jni.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
#define ANDROID_BITMAP_RESUT_SUCCESS 0
|
||||
#define ANDROID_BITMAP_RESULT_BAD_PARAMETER -1
|
||||
@@ -72,8 +71,6 @@ int AndroidBitmap_lockPixels(JNIEnv* env, jobject jbitmap, void** addrPtr);
|
||||
*/
|
||||
int AndroidBitmap_unlockPixels(JNIEnv* env, jobject jbitmap);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif
|
||||
#endif /* ANDROID_BITMAP_H */
|
||||
|
||||
@@ -19,9 +19,7 @@
|
||||
|
||||
#include <android/asset_manager.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
struct AConfiguration;
|
||||
typedef struct AConfiguration AConfiguration;
|
||||
@@ -312,8 +310,6 @@ int32_t AConfiguration_match(AConfiguration* base, AConfiguration* requested);
|
||||
int32_t AConfiguration_isBetterThan(AConfiguration* base, AConfiguration* test,
|
||||
AConfiguration* requested);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_CONFIGURATION_H
|
||||
#endif /* ANDROID_CONFIGURATION_H */
|
||||
|
||||
@@ -45,9 +45,7 @@
|
||||
#include <android/keycodes.h>
|
||||
#include <android/looper.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
/*
|
||||
* Key states (may be returned by queries about the current state of a
|
||||
@@ -677,8 +675,6 @@ int32_t AInputQueue_preDispatchEvent(AInputQueue* queue, AInputEvent* event);
|
||||
*/
|
||||
void AInputQueue_finishEvent(AInputQueue* queue, AInputEvent* event, int handled);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // _ANDROID_INPUT_H
|
||||
#endif /* _ANDROID_INPUT_H */
|
||||
|
||||
@@ -33,11 +33,10 @@
|
||||
* - DO NOT CHANGE THE LAYOUT OR SIZE OF STRUCTURES
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
/*
|
||||
* Key codes.
|
||||
@@ -159,8 +158,6 @@ enum {
|
||||
// Refer to frameworks/base/core/java/android/view/KeyEvent.java for the full list.
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // _ANDROID_KEYCODES_H
|
||||
#endif /* _ANDROID_KEYCODES_H */
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
#ifndef ANDROID_LOOPER_H
|
||||
#define ANDROID_LOOPER_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
/**
|
||||
* ALooper
|
||||
@@ -248,8 +248,6 @@ int ALooper_addFd(ALooper* looper, int fd, int ident, int events,
|
||||
*/
|
||||
int ALooper_removeFd(ALooper* looper, int fd);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_NATIVE_WINDOW_H
|
||||
#endif /* ANDROID_NATIVE_WINDOW_H */
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#define ANDROID_NATIVE_ACTIVITY_H
|
||||
|
||||
#include <stdint.h>
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <jni.h>
|
||||
@@ -27,9 +28,7 @@
|
||||
#include <android/input.h>
|
||||
#include <android/native_window.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
struct ANativeActivityCallbacks;
|
||||
|
||||
@@ -68,17 +67,17 @@ typedef struct ANativeActivity {
|
||||
* Path to this application's internal data directory.
|
||||
*/
|
||||
const char* internalDataPath;
|
||||
|
||||
|
||||
/**
|
||||
* Path to this application's external (removable/mountable) data directory.
|
||||
*/
|
||||
const char* externalDataPath;
|
||||
|
||||
|
||||
/**
|
||||
* The platform's SDK version code.
|
||||
*/
|
||||
int32_t sdkVersion;
|
||||
|
||||
|
||||
/**
|
||||
* This is the native instance of the application. It is not used by
|
||||
* the framework, but can be set by the application to its own instance
|
||||
@@ -105,13 +104,13 @@ typedef struct ANativeActivityCallbacks {
|
||||
* for more information.
|
||||
*/
|
||||
void (*onStart)(ANativeActivity* activity);
|
||||
|
||||
|
||||
/**
|
||||
* NativeActivity has resumed. See Java documentation for Activity.onResume()
|
||||
* for more information.
|
||||
*/
|
||||
void (*onResume)(ANativeActivity* activity);
|
||||
|
||||
|
||||
/**
|
||||
* Framework is asking NativeActivity to save its current instance state.
|
||||
* See Java documentation for Activity.onSaveInstanceState() for more
|
||||
@@ -122,19 +121,19 @@ typedef struct ANativeActivityCallbacks {
|
||||
* entities (pointers to memory, file descriptors, etc).
|
||||
*/
|
||||
void* (*onSaveInstanceState)(ANativeActivity* activity, size_t* outSize);
|
||||
|
||||
|
||||
/**
|
||||
* NativeActivity has paused. See Java documentation for Activity.onPause()
|
||||
* for more information.
|
||||
*/
|
||||
void (*onPause)(ANativeActivity* activity);
|
||||
|
||||
|
||||
/**
|
||||
* NativeActivity has stopped. See Java documentation for Activity.onStop()
|
||||
* for more information.
|
||||
*/
|
||||
void (*onStop)(ANativeActivity* activity);
|
||||
|
||||
|
||||
/**
|
||||
* NativeActivity is being destroyed. See Java documentation for Activity.onDestroy()
|
||||
* for more information.
|
||||
@@ -146,7 +145,7 @@ typedef struct ANativeActivityCallbacks {
|
||||
* for example, to pause a game when it loses input focus.
|
||||
*/
|
||||
void (*onWindowFocusChanged)(ANativeActivity* activity, int hasFocus);
|
||||
|
||||
|
||||
/**
|
||||
* The drawing window for this native activity has been created. You
|
||||
* can use the given native window object to start drawing.
|
||||
@@ -177,13 +176,13 @@ typedef struct ANativeActivityCallbacks {
|
||||
* returning from here.
|
||||
*/
|
||||
void (*onNativeWindowDestroyed)(ANativeActivity* activity, ANativeWindow* window);
|
||||
|
||||
|
||||
/**
|
||||
* The input queue for this native activity's window has been created.
|
||||
* You can use the given input queue to start retrieving input events.
|
||||
*/
|
||||
void (*onInputQueueCreated)(ANativeActivity* activity, AInputQueue* queue);
|
||||
|
||||
|
||||
/**
|
||||
* The input queue for this native activity's window is being destroyed.
|
||||
* You should no longer try to reference this object upon returning from this
|
||||
@@ -288,9 +287,6 @@ enum {
|
||||
*/
|
||||
void ANativeActivity_hideSoftInput(ANativeActivity* activity, uint32_t flags);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // ANDROID_NATIVE_ACTIVITY_H
|
||||
__END_DECLS
|
||||
|
||||
#endif /* ANDROID_NATIVE_ACTIVITY_H */
|
||||
|
||||
@@ -17,11 +17,10 @@
|
||||
#ifndef ANDROID_NATIVE_WINDOW_H
|
||||
#define ANDROID_NATIVE_WINDOW_H
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <android/rect.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
/*
|
||||
* Pixel formats that a window can use.
|
||||
@@ -51,7 +50,7 @@ typedef struct ANativeWindow_Buffer {
|
||||
|
||||
// The actual bits.
|
||||
void* bits;
|
||||
|
||||
|
||||
// Do not touch.
|
||||
uint32_t reserved[6];
|
||||
} ANativeWindow_Buffer;
|
||||
@@ -110,8 +109,6 @@ int32_t ANativeWindow_lock(ANativeWindow* window, ANativeWindow_Buffer* outBuffe
|
||||
*/
|
||||
int32_t ANativeWindow_unlockAndPost(ANativeWindow* window);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_NATIVE_WINDOW_H
|
||||
#endif /* ANDROID_NATIVE_WINDOW_H */
|
||||
|
||||
@@ -21,9 +21,7 @@
|
||||
|
||||
#include <jni.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
/**
|
||||
* Return the ANativeWindow associated with a Java Surface object,
|
||||
@@ -33,8 +31,6 @@ extern "C" {
|
||||
*/
|
||||
ANativeWindow* ANativeWindow_fromSurface(JNIEnv* env, jobject surface);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_NATIVE_WINDOW_H
|
||||
#endif /* ANDROID_NATIVE_WINDOW_H */
|
||||
|
||||
@@ -18,11 +18,10 @@
|
||||
#ifndef ANDROID_OBB_H
|
||||
#define ANDROID_OBB_H
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
struct AObbInfo;
|
||||
typedef struct AObbInfo AObbInfo;
|
||||
@@ -56,8 +55,6 @@ int32_t AObbInfo_getVersion(AObbInfo* obbInfo);
|
||||
*/
|
||||
int32_t AObbInfo_getFlags(AObbInfo* obbInfo);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_OBB_H
|
||||
#endif /* ANDROID_OBB_H */
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
#ifndef ANDROID_RECT_H
|
||||
#define ANDROID_RECT_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
typedef struct ARect {
|
||||
int32_t left;
|
||||
@@ -29,8 +29,6 @@ typedef struct ARect {
|
||||
int32_t bottom;
|
||||
} ARect;
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_RECT_H
|
||||
#endif /* ANDROID_RECT_H */
|
||||
|
||||
@@ -39,14 +39,12 @@
|
||||
* native code.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <android/looper.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
|
||||
/*
|
||||
@@ -249,8 +247,6 @@ float ASensor_getResolution(ASensor const* sensor);
|
||||
int ASensor_getMinDelay(ASensor const* sensor);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_SENSOR_H
|
||||
#endif /* ANDROID_SENSOR_H */
|
||||
|
||||
@@ -18,11 +18,10 @@
|
||||
#ifndef ANDROID_STORAGE_MANAGER_H
|
||||
#define ANDROID_STORAGE_MANAGER_H
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
__BEGIN_DECLS
|
||||
|
||||
struct AStorageManager;
|
||||
typedef struct AStorageManager AStorageManager;
|
||||
@@ -120,8 +119,6 @@ int AStorageManager_isObbMounted(AStorageManager* mgr, const char* filename);
|
||||
const char* AStorageManager_getMountedObbPath(AStorageManager* mgr, const char* filename);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_STORAGE_MANAGER_H
|
||||
#endif /* ANDROID_STORAGE_MANAGER_H */
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
#ifndef ANDROID_WINDOW_H
|
||||
#define ANDROID_WINDOW_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
/**
|
||||
* Window flags, as per the Java API at android.view.WindowManager.LayoutParams.
|
||||
@@ -51,8 +51,6 @@ enum {
|
||||
AWINDOW_FLAG_DISMISS_KEYGUARD = 0x00400000,
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
__END_DECLS
|
||||
|
||||
#endif // ANDROID_WINDOW_H
|
||||
#endif /* ANDROID_WINDOW_H */
|
||||
|
||||
316
ndk/platforms/android-9/include/arpa/telnet.h
Normal file
316
ndk/platforms/android-9/include/arpa/telnet.h
Normal file
@@ -0,0 +1,316 @@
|
||||
/*
|
||||
* Copyright (c) 1983, 1993
|
||||
* The Regents of the University of California. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 4. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)telnet.h 8.2 (Berkeley) 12/15/93
|
||||
*/
|
||||
|
||||
#ifndef _ARPA_TELNET_H
|
||||
#define _ARPA_TELNET_H 1
|
||||
|
||||
/*
|
||||
* Definitions for the TELNET protocol.
|
||||
*/
|
||||
#define IAC 255 /* interpret as command: */
|
||||
#define DONT 254 /* you are not to use option */
|
||||
#define DO 253 /* please, you use option */
|
||||
#define WONT 252 /* I won't use option */
|
||||
#define WILL 251 /* I will use option */
|
||||
#define SB 250 /* interpret as subnegotiation */
|
||||
#define GA 249 /* you may reverse the line */
|
||||
#define EL 248 /* erase the current line */
|
||||
#define EC 247 /* erase the current character */
|
||||
#define AYT 246 /* are you there */
|
||||
#define AO 245 /* abort output--but let prog finish */
|
||||
#define IP 244 /* interrupt process--permanently */
|
||||
#define BREAK 243 /* break */
|
||||
#define DM 242 /* data mark--for connect. cleaning */
|
||||
#define NOP 241 /* nop */
|
||||
#define SE 240 /* end sub negotiation */
|
||||
#define EOR 239 /* end of record (transparent mode) */
|
||||
#define ABORT 238 /* Abort process */
|
||||
#define SUSP 237 /* Suspend process */
|
||||
#define xEOF 236 /* End of file: EOF is already used... */
|
||||
|
||||
#define SYNCH 242 /* for telfunc calls */
|
||||
|
||||
#ifdef TELCMDS
|
||||
char *telcmds[] = {
|
||||
"EOF", "SUSP", "ABORT", "EOR",
|
||||
"SE", "NOP", "DMARK", "BRK", "IP", "AO", "AYT", "EC",
|
||||
"EL", "GA", "SB", "WILL", "WONT", "DO", "DONT", "IAC", 0,
|
||||
};
|
||||
#else
|
||||
extern char *telcmds[];
|
||||
#endif
|
||||
|
||||
#define TELCMD_FIRST xEOF
|
||||
#define TELCMD_LAST IAC
|
||||
#define TELCMD_OK(x) ((unsigned int)(x) <= TELCMD_LAST && \
|
||||
(unsigned int)(x) >= TELCMD_FIRST)
|
||||
#define TELCMD(x) telcmds[(x)-TELCMD_FIRST]
|
||||
|
||||
/* telnet options */
|
||||
#define TELOPT_BINARY 0 /* 8-bit data path */
|
||||
#define TELOPT_ECHO 1 /* echo */
|
||||
#define TELOPT_RCP 2 /* prepare to reconnect */
|
||||
#define TELOPT_SGA 3 /* suppress go ahead */
|
||||
#define TELOPT_NAMS 4 /* approximate message size */
|
||||
#define TELOPT_STATUS 5 /* give status */
|
||||
#define TELOPT_TM 6 /* timing mark */
|
||||
#define TELOPT_RCTE 7 /* remote controlled transmission and echo */
|
||||
#define TELOPT_NAOL 8 /* negotiate about output line width */
|
||||
#define TELOPT_NAOP 9 /* negotiate about output page size */
|
||||
#define TELOPT_NAOCRD 10 /* negotiate about CR disposition */
|
||||
#define TELOPT_NAOHTS 11 /* negotiate about horizontal tabstops */
|
||||
#define TELOPT_NAOHTD 12 /* negotiate about horizontal tab disposition */
|
||||
#define TELOPT_NAOFFD 13 /* negotiate about formfeed disposition */
|
||||
#define TELOPT_NAOVTS 14 /* negotiate about vertical tab stops */
|
||||
#define TELOPT_NAOVTD 15 /* negotiate about vertical tab disposition */
|
||||
#define TELOPT_NAOLFD 16 /* negotiate about output LF disposition */
|
||||
#define TELOPT_XASCII 17 /* extended ascii character set */
|
||||
#define TELOPT_LOGOUT 18 /* force logout */
|
||||
#define TELOPT_BM 19 /* byte macro */
|
||||
#define TELOPT_DET 20 /* data entry terminal */
|
||||
#define TELOPT_SUPDUP 21 /* supdup protocol */
|
||||
#define TELOPT_SUPDUPOUTPUT 22 /* supdup output */
|
||||
#define TELOPT_SNDLOC 23 /* send location */
|
||||
#define TELOPT_TTYPE 24 /* terminal type */
|
||||
#define TELOPT_EOR 25 /* end or record */
|
||||
#define TELOPT_TUID 26 /* TACACS user identification */
|
||||
#define TELOPT_OUTMRK 27 /* output marking */
|
||||
#define TELOPT_TTYLOC 28 /* terminal location number */
|
||||
#define TELOPT_3270REGIME 29 /* 3270 regime */
|
||||
#define TELOPT_X3PAD 30 /* X.3 PAD */
|
||||
#define TELOPT_NAWS 31 /* window size */
|
||||
#define TELOPT_TSPEED 32 /* terminal speed */
|
||||
#define TELOPT_LFLOW 33 /* remote flow control */
|
||||
#define TELOPT_LINEMODE 34 /* Linemode option */
|
||||
#define TELOPT_XDISPLOC 35 /* X Display Location */
|
||||
#define TELOPT_OLD_ENVIRON 36 /* Old - Environment variables */
|
||||
#define TELOPT_AUTHENTICATION 37/* Authenticate */
|
||||
#define TELOPT_ENCRYPT 38 /* Encryption option */
|
||||
#define TELOPT_NEW_ENVIRON 39 /* New - Environment variables */
|
||||
#define TELOPT_EXOPL 255 /* extended-options-list */
|
||||
|
||||
|
||||
#define NTELOPTS (1+TELOPT_NEW_ENVIRON)
|
||||
#ifdef TELOPTS
|
||||
const char *telopts[NTELOPTS+1] = {
|
||||
"BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", "NAME",
|
||||
"STATUS", "TIMING MARK", "RCTE", "NAOL", "NAOP",
|
||||
"NAOCRD", "NAOHTS", "NAOHTD", "NAOFFD", "NAOVTS",
|
||||
"NAOVTD", "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO",
|
||||
"DATA ENTRY TERMINAL", "SUPDUP", "SUPDUP OUTPUT",
|
||||
"SEND LOCATION", "TERMINAL TYPE", "END OF RECORD",
|
||||
"TACACS UID", "OUTPUT MARKING", "TTYLOC",
|
||||
"3270 REGIME", "X.3 PAD", "NAWS", "TSPEED", "LFLOW",
|
||||
"LINEMODE", "XDISPLOC", "OLD-ENVIRON", "AUTHENTICATION",
|
||||
"ENCRYPT", "NEW-ENVIRON",
|
||||
0,
|
||||
};
|
||||
#define TELOPT_FIRST TELOPT_BINARY
|
||||
#define TELOPT_LAST TELOPT_NEW_ENVIRON
|
||||
#define TELOPT_OK(x) ((unsigned int)(x) <= TELOPT_LAST)
|
||||
#define TELOPT(x) telopts[(x)-TELOPT_FIRST]
|
||||
#endif
|
||||
|
||||
/* sub-option qualifiers */
|
||||
#define TELQUAL_IS 0 /* option is... */
|
||||
#define TELQUAL_SEND 1 /* send option */
|
||||
#define TELQUAL_INFO 2 /* ENVIRON: informational version of IS */
|
||||
#define TELQUAL_REPLY 2 /* AUTHENTICATION: client version of IS */
|
||||
#define TELQUAL_NAME 3 /* AUTHENTICATION: client version of IS */
|
||||
|
||||
#define LFLOW_OFF 0 /* Disable remote flow control */
|
||||
#define LFLOW_ON 1 /* Enable remote flow control */
|
||||
#define LFLOW_RESTART_ANY 2 /* Restart output on any char */
|
||||
#define LFLOW_RESTART_XON 3 /* Restart output only on XON */
|
||||
|
||||
/*
|
||||
* LINEMODE suboptions
|
||||
*/
|
||||
|
||||
#define LM_MODE 1
|
||||
#define LM_FORWARDMASK 2
|
||||
#define LM_SLC 3
|
||||
|
||||
#define MODE_EDIT 0x01
|
||||
#define MODE_TRAPSIG 0x02
|
||||
#define MODE_ACK 0x04
|
||||
#define MODE_SOFT_TAB 0x08
|
||||
#define MODE_LIT_ECHO 0x10
|
||||
|
||||
#define MODE_MASK 0x1f
|
||||
|
||||
/* Not part of protocol, but needed to simplify things... */
|
||||
#define MODE_FLOW 0x0100
|
||||
#define MODE_ECHO 0x0200
|
||||
#define MODE_INBIN 0x0400
|
||||
#define MODE_OUTBIN 0x0800
|
||||
#define MODE_FORCE 0x1000
|
||||
|
||||
#define SLC_SYNCH 1
|
||||
#define SLC_BRK 2
|
||||
#define SLC_IP 3
|
||||
#define SLC_AO 4
|
||||
#define SLC_AYT 5
|
||||
#define SLC_EOR 6
|
||||
#define SLC_ABORT 7
|
||||
#define SLC_EOF 8
|
||||
#define SLC_SUSP 9
|
||||
#define SLC_EC 10
|
||||
#define SLC_EL 11
|
||||
#define SLC_EW 12
|
||||
#define SLC_RP 13
|
||||
#define SLC_LNEXT 14
|
||||
#define SLC_XON 15
|
||||
#define SLC_XOFF 16
|
||||
#define SLC_FORW1 17
|
||||
#define SLC_FORW2 18
|
||||
|
||||
#define NSLC 18
|
||||
|
||||
/*
|
||||
* For backwards compatibility, we define SLC_NAMES to be the
|
||||
* list of names if SLC_NAMES is not defined.
|
||||
*/
|
||||
#define SLC_NAMELIST "0", "SYNCH", "BRK", "IP", "AO", "AYT", "EOR", \
|
||||
"ABORT", "EOF", "SUSP", "EC", "EL", "EW", "RP", \
|
||||
"LNEXT", "XON", "XOFF", "FORW1", "FORW2", 0,
|
||||
#ifdef SLC_NAMES
|
||||
const char *slc_names[] = {
|
||||
SLC_NAMELIST
|
||||
};
|
||||
#else
|
||||
extern char *slc_names[];
|
||||
#define SLC_NAMES SLC_NAMELIST
|
||||
#endif
|
||||
|
||||
#define SLC_NAME_OK(x) ((unsigned int)(x) <= NSLC)
|
||||
#define SLC_NAME(x) slc_names[x]
|
||||
|
||||
#define SLC_NOSUPPORT 0
|
||||
#define SLC_CANTCHANGE 1
|
||||
#define SLC_VARIABLE 2
|
||||
#define SLC_DEFAULT 3
|
||||
#define SLC_LEVELBITS 0x03
|
||||
|
||||
#define SLC_FUNC 0
|
||||
#define SLC_FLAGS 1
|
||||
#define SLC_VALUE 2
|
||||
|
||||
#define SLC_ACK 0x80
|
||||
#define SLC_FLUSHIN 0x40
|
||||
#define SLC_FLUSHOUT 0x20
|
||||
|
||||
#define OLD_ENV_VAR 1
|
||||
#define OLD_ENV_VALUE 0
|
||||
#define NEW_ENV_VAR 0
|
||||
#define NEW_ENV_VALUE 1
|
||||
#define ENV_ESC 2
|
||||
#define ENV_USERVAR 3
|
||||
|
||||
/*
|
||||
* AUTHENTICATION suboptions
|
||||
*/
|
||||
|
||||
/*
|
||||
* Who is authenticating who ...
|
||||
*/
|
||||
#define AUTH_WHO_CLIENT 0 /* Client authenticating server */
|
||||
#define AUTH_WHO_SERVER 1 /* Server authenticating client */
|
||||
#define AUTH_WHO_MASK 1
|
||||
|
||||
/*
|
||||
* amount of authentication done
|
||||
*/
|
||||
#define AUTH_HOW_ONE_WAY 0
|
||||
#define AUTH_HOW_MUTUAL 2
|
||||
#define AUTH_HOW_MASK 2
|
||||
|
||||
#define AUTHTYPE_NULL 0
|
||||
#define AUTHTYPE_KERBEROS_V4 1
|
||||
#define AUTHTYPE_KERBEROS_V5 2
|
||||
#define AUTHTYPE_SPX 3
|
||||
#define AUTHTYPE_MINK 4
|
||||
#define AUTHTYPE_CNT 5
|
||||
|
||||
#define AUTHTYPE_TEST 99
|
||||
|
||||
#ifdef AUTH_NAMES
|
||||
const char *authtype_names[] = {
|
||||
"NULL", "KERBEROS_V4", "KERBEROS_V5", "SPX", "MINK", 0,
|
||||
};
|
||||
#else
|
||||
extern char *authtype_names[];
|
||||
#endif
|
||||
|
||||
#define AUTHTYPE_NAME_OK(x) ((unsigned int)(x) < AUTHTYPE_CNT)
|
||||
#define AUTHTYPE_NAME(x) authtype_names[x]
|
||||
|
||||
/*
|
||||
* ENCRYPTion suboptions
|
||||
*/
|
||||
#define ENCRYPT_IS 0 /* I pick encryption type ... */
|
||||
#define ENCRYPT_SUPPORT 1 /* I support encryption types ... */
|
||||
#define ENCRYPT_REPLY 2 /* Initial setup response */
|
||||
#define ENCRYPT_START 3 /* Am starting to send encrypted */
|
||||
#define ENCRYPT_END 4 /* Am ending encrypted */
|
||||
#define ENCRYPT_REQSTART 5 /* Request you start encrypting */
|
||||
#define ENCRYPT_REQEND 6 /* Request you send encrypting */
|
||||
#define ENCRYPT_ENC_KEYID 7
|
||||
#define ENCRYPT_DEC_KEYID 8
|
||||
#define ENCRYPT_CNT 9
|
||||
|
||||
#define ENCTYPE_ANY 0
|
||||
#define ENCTYPE_DES_CFB64 1
|
||||
#define ENCTYPE_DES_OFB64 2
|
||||
#define ENCTYPE_CNT 3
|
||||
|
||||
#ifdef ENCRYPT_NAMES
|
||||
const char *encrypt_names[] = {
|
||||
"IS", "SUPPORT", "REPLY", "START", "END",
|
||||
"REQUEST-START", "REQUEST-END", "ENC-KEYID", "DEC-KEYID",
|
||||
0,
|
||||
};
|
||||
const char *enctype_names[] = {
|
||||
"ANY", "DES_CFB64", "DES_OFB64", 0,
|
||||
};
|
||||
#else
|
||||
extern const char *encrypt_names[];
|
||||
extern const char *enctype_names[];
|
||||
#endif
|
||||
|
||||
|
||||
#define ENCRYPT_NAME_OK(x) ((unsigned int)(x) < ENCRYPT_CNT)
|
||||
#define ENCRYPT_NAME(x) encrypt_names[x]
|
||||
|
||||
#define ENCTYPE_NAME_OK(x) ((unsigned int)(x) < ENCTYPE_CNT)
|
||||
#define ENCTYPE_NAME(x) enctype_names[x]
|
||||
|
||||
#endif /* arpa/telnet.h */
|
||||
@@ -163,7 +163,9 @@ int pthread_mutex_destroy(pthread_mutex_t *mutex);
|
||||
int pthread_mutex_lock(pthread_mutex_t *mutex);
|
||||
int pthread_mutex_unlock(pthread_mutex_t *mutex);
|
||||
int pthread_mutex_trylock(pthread_mutex_t *mutex);
|
||||
#if 0 /* MISSING FROM BIONIC */
|
||||
int pthread_mutex_timedlock(pthread_mutex_t *mutex, struct timespec* ts);
|
||||
#endif /* MISSING */
|
||||
|
||||
int pthread_condattr_init(pthread_condattr_t *attr);
|
||||
int pthread_condattr_getpshared(pthread_condattr_t *attr, int *pshared);
|
||||
|
||||
78
ndk/platforms/android-9/include/sched.h
Normal file
78
ndk/platforms/android-9/include/sched.h
Normal file
@@ -0,0 +1,78 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef _SCHED_H_
|
||||
#define _SCHED_H_
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
#define SCHED_NORMAL 0
|
||||
#define SCHED_OTHER 0
|
||||
#define SCHED_FIFO 1
|
||||
#define SCHED_RR 2
|
||||
|
||||
struct sched_param {
|
||||
int sched_priority;
|
||||
};
|
||||
|
||||
extern int sched_setscheduler(pid_t, int, const struct sched_param *);
|
||||
extern int sched_getscheduler(pid_t);
|
||||
extern int sched_yield(void);
|
||||
extern int sched_get_priority_max(int policy);
|
||||
extern int sched_get_priority_min(int policy);
|
||||
extern int sched_setparam(pid_t, const struct sched_param *);
|
||||
extern int sched_getparam(pid_t, struct sched_param *);
|
||||
extern int sched_rr_get_interval(pid_t pid, struct timespec *tp);
|
||||
|
||||
#define CLONE_VM 0x00000100
|
||||
#define CLONE_FS 0x00000200
|
||||
#define CLONE_FILES 0x00000400
|
||||
#define CLONE_SIGHAND 0x00000800
|
||||
#define CLONE_PTRACE 0x00002000
|
||||
#define CLONE_VFORK 0x00004000
|
||||
#define CLONE_PARENT 0x00008000
|
||||
#define CLONE_THREAD 0x00010000
|
||||
#define CLONE_NEWNS 0x00020000
|
||||
#define CLONE_SYSVSEM 0x00040000
|
||||
#define CLONE_SETTLS 0x00080000
|
||||
#define CLONE_PARENT_SETTID 0x00100000
|
||||
#define CLONE_CHILD_CLEARTID 0x00200000
|
||||
#define CLONE_DETACHED 0x00400000
|
||||
#define CLONE_UNTRACED 0x00800000
|
||||
#define CLONE_CHILD_SETTID 0x01000000
|
||||
#define CLONE_STOPPED 0x02000000
|
||||
|
||||
#ifdef _GNU_SOURCE
|
||||
extern int clone(int (*fn)(void *), void *child_stack, int flags, void* arg, ...);
|
||||
#endif
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _SCHED_H_ */
|
||||
@@ -50,7 +50,6 @@ __BEGIN_DECLS
|
||||
extern __noreturn void exit(int);
|
||||
extern __noreturn void abort(void);
|
||||
extern int atexit(void (*)(void));
|
||||
extern int on_exit(void (*)(int, void *), void *);
|
||||
|
||||
extern char *getenv(const char *);
|
||||
extern int putenv(const char *);
|
||||
@@ -107,6 +106,8 @@ extern long mrand48(void);
|
||||
extern long nrand48(unsigned short *);
|
||||
extern long lrand48(void);
|
||||
extern unsigned short *seed48(unsigned short*);
|
||||
extern double erand48(unsigned short xsubi[3]);
|
||||
extern double drand48(void);
|
||||
extern void srand48(long);
|
||||
extern unsigned int arc4random(void);
|
||||
extern void arc4random_stir(void);
|
||||
@@ -135,7 +136,7 @@ extern char* ptsname(int);
|
||||
extern int ptsname_r(int, char*, size_t);
|
||||
extern int getpt(void);
|
||||
|
||||
static __inline__ int grantpt(int __fd)
|
||||
static __inline__ int grantpt(int __fd __attribute((unused)))
|
||||
{
|
||||
(void)__fd;
|
||||
return 0; /* devpts does this all for us! */
|
||||
@@ -162,6 +163,7 @@ typedef struct {
|
||||
|
||||
extern lldiv_t lldiv(long long, long long);
|
||||
|
||||
#if 1 /* MISSING FROM BIONIC - ENABLED FOR STLPort and libstdc++-v3 */
|
||||
/* make STLPort happy */
|
||||
extern int mblen(const char *, size_t);
|
||||
extern size_t mbstowcs(wchar_t *, const char *, size_t);
|
||||
@@ -170,8 +172,14 @@ extern int mbtowc(wchar_t *, const char *, size_t);
|
||||
/* Likewise, make libstdc++-v3 happy. */
|
||||
extern int wctomb(char *, wchar_t);
|
||||
extern size_t wcstombs(char *, const wchar_t *, size_t);
|
||||
#endif /* MISSING */
|
||||
|
||||
#define MB_CUR_MAX 1
|
||||
|
||||
#if 0 /* MISSING FROM BIONIC */
|
||||
extern int on_exit(void (*)(int, void *), void *);
|
||||
#endif /* MISSING */
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _STDLIB_H_ */
|
||||
|
||||
56
ndk/platforms/android-9/include/strings.h
Normal file
56
ndk/platforms/android-9/include/strings.h
Normal file
@@ -0,0 +1,56 @@
|
||||
/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This code is derived from software contributed to The NetBSD Foundation
|
||||
* by Klaus Klein.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by the NetBSD
|
||||
* Foundation, Inc. and its contributors.
|
||||
* 4. Neither the name of The NetBSD Foundation nor the names of its
|
||||
* contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _STRINGS_H_
|
||||
#define _STRINGS_H_
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
int bcmp(const void *, const void *, size_t);
|
||||
void bcopy(const void *, void *, size_t);
|
||||
void bzero(void *, size_t);
|
||||
int ffs(int);
|
||||
char *index(const char *, int);
|
||||
char *rindex(const char *, int);
|
||||
int strcasecmp(const char *, const char *);
|
||||
int strncasecmp(const char *, const char *, size_t);
|
||||
__END_DECLS
|
||||
|
||||
#endif /* !defined(_STRINGS_H_) */
|
||||
70
ndk/platforms/android-9/include/sys/_sigdefs.h
Normal file
70
ndk/platforms/android-9/include/sys/_sigdefs.h
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
/*
|
||||
* this header is used to define signal constants and names;
|
||||
* it might be included several times
|
||||
*/
|
||||
|
||||
#ifndef __BIONIC_SIGDEF
|
||||
#error __BIONIC_SIGDEF not defined
|
||||
#endif
|
||||
|
||||
__BIONIC_SIGDEF(HUP,1,"Hangup")
|
||||
__BIONIC_SIGDEF(INT,2,"Interrupt")
|
||||
__BIONIC_SIGDEF(QUIT,3,"Quit")
|
||||
__BIONIC_SIGDEF(ILL,4,"Illegal instruction")
|
||||
__BIONIC_SIGDEF(TRAP,5,"Trap")
|
||||
__BIONIC_SIGDEF(ABRT,6,"Aborted")
|
||||
__BIONIC_SIGDEF(BUS,7,"Bus error")
|
||||
__BIONIC_SIGDEF(FPE,8,"Floating point exception")
|
||||
__BIONIC_SIGDEF(KILL,9,"Killed")
|
||||
__BIONIC_SIGDEF(USR1,10,"User signal 1")
|
||||
__BIONIC_SIGDEF(SEGV,11,"Segmentation fault")
|
||||
__BIONIC_SIGDEF(USR2,12,"User signal 2")
|
||||
__BIONIC_SIGDEF(PIPE,13,"Broken pipe")
|
||||
__BIONIC_SIGDEF(ALRM,14,"Alarm clock")
|
||||
__BIONIC_SIGDEF(TERM,15,"Terminated")
|
||||
__BIONIC_SIGDEF(STKFLT,16,"Stack fault")
|
||||
__BIONIC_SIGDEF(CHLD,17,"Child exited")
|
||||
__BIONIC_SIGDEF(CONT,18,"Continue")
|
||||
__BIONIC_SIGDEF(STOP,19,"Stopped (signal)")
|
||||
__BIONIC_SIGDEF(TSTP,20,"Stopped")
|
||||
__BIONIC_SIGDEF(TTIN,21,"Stopped (tty input)")
|
||||
__BIONIC_SIGDEF(TTOU,22,"Stopper (tty output)")
|
||||
__BIONIC_SIGDEF(URG,23,"Urgent I/O condition")
|
||||
__BIONIC_SIGDEF(XCPU,24,"CPU time limit exceeded")
|
||||
__BIONIC_SIGDEF(XFSZ,25,"File size limit exceeded")
|
||||
__BIONIC_SIGDEF(VTALRM,26,"Virtual timer expired")
|
||||
__BIONIC_SIGDEF(PROF,27,"Profiling timer expired")
|
||||
__BIONIC_SIGDEF(WINCH,28,"Window size changed")
|
||||
__BIONIC_SIGDEF(IO,29,"I/O possible")
|
||||
__BIONIC_SIGDEF(PWR,30,"Power failure")
|
||||
__BIONIC_SIGDEF(SYS,31,"Bad system call")
|
||||
|
||||
#undef __BIONIC_SIGDEF
|
||||
501
ndk/platforms/android-9/include/sys/cdefs.h
Normal file
501
ndk/platforms/android-9/include/sys/cdefs.h
Normal file
@@ -0,0 +1,501 @@
|
||||
/* $NetBSD: cdefs.h,v 1.58 2004/12/11 05:59:00 christos Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1991, 1993
|
||||
* The Regents of the University of California. All rights reserved.
|
||||
*
|
||||
* This code is derived from software contributed to Berkeley by
|
||||
* Berkeley Software Design, Inc.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)cdefs.h 8.8 (Berkeley) 1/9/95
|
||||
*/
|
||||
|
||||
#ifndef _SYS_CDEFS_H_
|
||||
#define _SYS_CDEFS_H_
|
||||
|
||||
/*
|
||||
* Macro to test if we're using a GNU C compiler of a specific vintage
|
||||
* or later, for e.g. features that appeared in a particular version
|
||||
* of GNU C. Usage:
|
||||
*
|
||||
* #if __GNUC_PREREQ__(major, minor)
|
||||
* ...cool feature...
|
||||
* #else
|
||||
* ...delete feature...
|
||||
* #endif
|
||||
*/
|
||||
#ifdef __GNUC__
|
||||
#define __GNUC_PREREQ__(x, y) \
|
||||
((__GNUC__ == (x) && __GNUC_MINOR__ >= (y)) || \
|
||||
(__GNUC__ > (x)))
|
||||
#else
|
||||
#define __GNUC_PREREQ__(x, y) 0
|
||||
#endif
|
||||
|
||||
#include <sys/cdefs_elf.h>
|
||||
|
||||
#if defined(__cplusplus)
|
||||
#define __BEGIN_DECLS extern "C" {
|
||||
#define __END_DECLS }
|
||||
#define __static_cast(x,y) static_cast<x>(y)
|
||||
#else
|
||||
#define __BEGIN_DECLS
|
||||
#define __END_DECLS
|
||||
#define __static_cast(x,y) (x)y
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The __CONCAT macro is used to concatenate parts of symbol names, e.g.
|
||||
* with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
|
||||
* The __CONCAT macro is a bit tricky -- make sure you don't put spaces
|
||||
* in between its arguments. __CONCAT can also concatenate double-quoted
|
||||
* strings produced by the __STRING macro, but this only works with ANSI C.
|
||||
*/
|
||||
|
||||
#define ___STRING(x) __STRING(x)
|
||||
#define ___CONCAT(x,y) __CONCAT(x,y)
|
||||
|
||||
#if __STDC__ || defined(__cplusplus)
|
||||
#define __P(protos) protos /* full-blown ANSI C */
|
||||
#define __CONCAT(x,y) x ## y
|
||||
#define __STRING(x) #x
|
||||
|
||||
#define __const const /* define reserved names to standard */
|
||||
#define __signed signed
|
||||
#define __volatile volatile
|
||||
#if defined(__cplusplus)
|
||||
#define __inline inline /* convert to C++ keyword */
|
||||
#else
|
||||
#if !defined(__GNUC__) && !defined(__lint__)
|
||||
#define __inline /* delete GCC keyword */
|
||||
#endif /* !__GNUC__ && !__lint__ */
|
||||
#endif /* !__cplusplus */
|
||||
|
||||
#else /* !(__STDC__ || __cplusplus) */
|
||||
#define __P(protos) () /* traditional C preprocessor */
|
||||
#define __CONCAT(x,y) x/**/y
|
||||
#define __STRING(x) "x"
|
||||
|
||||
#ifndef __GNUC__
|
||||
#define __const /* delete pseudo-ANSI C keywords */
|
||||
#define __inline
|
||||
#define __signed
|
||||
#define __volatile
|
||||
#endif /* !__GNUC__ */
|
||||
|
||||
/*
|
||||
* In non-ANSI C environments, new programs will want ANSI-only C keywords
|
||||
* deleted from the program and old programs will want them left alone.
|
||||
* Programs using the ANSI C keywords const, inline etc. as normal
|
||||
* identifiers should define -DNO_ANSI_KEYWORDS.
|
||||
*/
|
||||
#ifndef NO_ANSI_KEYWORDS
|
||||
#define const __const /* convert ANSI C keywords */
|
||||
#define inline __inline
|
||||
#define signed __signed
|
||||
#define volatile __volatile
|
||||
#endif /* !NO_ANSI_KEYWORDS */
|
||||
#endif /* !(__STDC__ || __cplusplus) */
|
||||
|
||||
/*
|
||||
* Used for internal auditing of the NetBSD source tree.
|
||||
*/
|
||||
#ifdef __AUDIT__
|
||||
#define __aconst __const
|
||||
#else
|
||||
#define __aconst
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The following macro is used to remove const cast-away warnings
|
||||
* from gcc -Wcast-qual; it should be used with caution because it
|
||||
* can hide valid errors; in particular most valid uses are in
|
||||
* situations where the API requires it, not to cast away string
|
||||
* constants. We don't use *intptr_t on purpose here and we are
|
||||
* explicit about unsigned long so that we don't have additional
|
||||
* dependencies.
|
||||
*/
|
||||
#define __UNCONST(a) ((void *)(unsigned long)(const void *)(a))
|
||||
|
||||
/*
|
||||
* GCC2 provides __extension__ to suppress warnings for various GNU C
|
||||
* language extensions under "-ansi -pedantic".
|
||||
*/
|
||||
#if !__GNUC_PREREQ__(2, 0)
|
||||
#define __extension__ /* delete __extension__ if non-gcc or gcc1 */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* GCC1 and some versions of GCC2 declare dead (non-returning) and
|
||||
* pure (no side effects) functions using "volatile" and "const";
|
||||
* unfortunately, these then cause warnings under "-ansi -pedantic".
|
||||
* GCC2 uses a new, peculiar __attribute__((attrs)) style. All of
|
||||
* these work for GNU C++ (modulo a slight glitch in the C++ grammar
|
||||
* in the distribution version of 2.5.5).
|
||||
*/
|
||||
#if !__GNUC_PREREQ__(2, 5)
|
||||
#define __attribute__(x) /* delete __attribute__ if non-gcc or gcc1 */
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
|
||||
#define __dead __volatile
|
||||
#define __pure __const
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Delete pseudo-keywords wherever they are not available or needed. */
|
||||
#ifndef __dead
|
||||
#define __dead
|
||||
#define __pure
|
||||
#endif
|
||||
|
||||
#if __GNUC_PREREQ__(2, 7)
|
||||
#define __unused __attribute__((__unused__))
|
||||
#else
|
||||
#define __unused /* delete */
|
||||
#endif
|
||||
|
||||
#if __GNUC_PREREQ__(3, 1)
|
||||
#define __used __attribute__((__used__))
|
||||
#else
|
||||
#define __used /* delete */
|
||||
#endif
|
||||
|
||||
#if __GNUC_PREREQ__(2, 7)
|
||||
#define __packed __attribute__((__packed__))
|
||||
#define __aligned(x) __attribute__((__aligned__(x)))
|
||||
#define __section(x) __attribute__((__section__(x)))
|
||||
#elif defined(__lint__)
|
||||
#define __packed /* delete */
|
||||
#define __aligned(x) /* delete */
|
||||
#define __section(x) /* delete */
|
||||
#else
|
||||
#define __packed error: no __packed for this compiler
|
||||
#define __aligned(x) error: no __aligned for this compiler
|
||||
#define __section(x) error: no __section for this compiler
|
||||
#endif
|
||||
|
||||
#if !__GNUC_PREREQ__(2, 8)
|
||||
#define __extension__
|
||||
#endif
|
||||
|
||||
#if __GNUC_PREREQ__(2, 8)
|
||||
#define __statement(x) __extension__(x)
|
||||
#elif defined(lint)
|
||||
#define __statement(x) (0)
|
||||
#else
|
||||
#define __statement(x) (x)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* C99 defines the restrict type qualifier keyword, which was made available
|
||||
* in GCC 2.92.
|
||||
*/
|
||||
#if __STDC_VERSION__ >= 199901L
|
||||
#define __restrict restrict
|
||||
#else
|
||||
#if !__GNUC_PREREQ__(2, 92)
|
||||
#define __restrict /* delete __restrict when not supported */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* C99 defines __func__ predefined identifier, which was made available
|
||||
* in GCC 2.95.
|
||||
*/
|
||||
#if !(__STDC_VERSION__ >= 199901L)
|
||||
#if __GNUC_PREREQ__(2, 6)
|
||||
#define __func__ __PRETTY_FUNCTION__
|
||||
#elif __GNUC_PREREQ__(2, 4)
|
||||
#define __func__ __FUNCTION__
|
||||
#else
|
||||
#define __func__ ""
|
||||
#endif
|
||||
#endif /* !(__STDC_VERSION__ >= 199901L) */
|
||||
|
||||
#if defined(_KERNEL)
|
||||
#if defined(NO_KERNEL_RCSIDS)
|
||||
#undef __KERNEL_RCSID
|
||||
#define __KERNEL_RCSID(_n, _s) /* nothing */
|
||||
#endif /* NO_KERNEL_RCSIDS */
|
||||
#endif /* _KERNEL */
|
||||
|
||||
#if !defined(_STANDALONE) && !defined(_KERNEL)
|
||||
#ifdef __GNUC__
|
||||
#define __RENAME(x) ___RENAME(x)
|
||||
#else
|
||||
#ifdef __lint__
|
||||
#define __RENAME(x) __symbolrename(x)
|
||||
#else
|
||||
#error "No function renaming possible"
|
||||
#endif /* __lint__ */
|
||||
#endif /* __GNUC__ */
|
||||
#else /* _STANDALONE || _KERNEL */
|
||||
#define __RENAME(x) no renaming in kernel or standalone environment
|
||||
#endif
|
||||
|
||||
/*
|
||||
* A barrier to stop the optimizer from moving code or assume live
|
||||
* register values. This is gcc specific, the version is more or less
|
||||
* arbitrary, might work with older compilers.
|
||||
*/
|
||||
#if __GNUC_PREREQ__(2, 95)
|
||||
#define __insn_barrier() __asm __volatile("":::"memory")
|
||||
#else
|
||||
#define __insn_barrier() /* */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* GNU C version 2.96 adds explicit branch prediction so that
|
||||
* the CPU back-end can hint the processor and also so that
|
||||
* code blocks can be reordered such that the predicted path
|
||||
* sees a more linear flow, thus improving cache behavior, etc.
|
||||
*
|
||||
* The following two macros provide us with a way to use this
|
||||
* compiler feature. Use __predict_true() if you expect the expression
|
||||
* to evaluate to true, and __predict_false() if you expect the
|
||||
* expression to evaluate to false.
|
||||
*
|
||||
* A few notes about usage:
|
||||
*
|
||||
* * Generally, __predict_false() error condition checks (unless
|
||||
* you have some _strong_ reason to do otherwise, in which case
|
||||
* document it), and/or __predict_true() `no-error' condition
|
||||
* checks, assuming you want to optimize for the no-error case.
|
||||
*
|
||||
* * Other than that, if you don't know the likelihood of a test
|
||||
* succeeding from empirical or other `hard' evidence, don't
|
||||
* make predictions.
|
||||
*
|
||||
* * These are meant to be used in places that are run `a lot'.
|
||||
* It is wasteful to make predictions in code that is run
|
||||
* seldomly (e.g. at subsystem initialization time) as the
|
||||
* basic block reordering that this affects can often generate
|
||||
* larger code.
|
||||
*/
|
||||
#if __GNUC_PREREQ__(2, 96)
|
||||
#define __predict_true(exp) __builtin_expect((exp) != 0, 1)
|
||||
#define __predict_false(exp) __builtin_expect((exp) != 0, 0)
|
||||
#else
|
||||
#define __predict_true(exp) (exp)
|
||||
#define __predict_false(exp) (exp)
|
||||
#endif
|
||||
|
||||
#if __GNUC_PREREQ__(2, 96)
|
||||
#define __noreturn __attribute__((__noreturn__))
|
||||
#define __mallocfunc __attribute__((malloc))
|
||||
#else
|
||||
#define __noreturn
|
||||
#define __mallocfunc
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Macros for manipulating "link sets". Link sets are arrays of pointers
|
||||
* to objects, which are gathered up by the linker.
|
||||
*
|
||||
* Object format-specific code has provided us with the following macros:
|
||||
*
|
||||
* __link_set_add_text(set, sym)
|
||||
* Add a reference to the .text symbol `sym' to `set'.
|
||||
*
|
||||
* __link_set_add_rodata(set, sym)
|
||||
* Add a reference to the .rodata symbol `sym' to `set'.
|
||||
*
|
||||
* __link_set_add_data(set, sym)
|
||||
* Add a reference to the .data symbol `sym' to `set'.
|
||||
*
|
||||
* __link_set_add_bss(set, sym)
|
||||
* Add a reference to the .bss symbol `sym' to `set'.
|
||||
*
|
||||
* __link_set_decl(set, ptype)
|
||||
* Provide an extern declaration of the set `set', which
|
||||
* contains an array of the pointer type `ptype'. This
|
||||
* macro must be used by any code which wishes to reference
|
||||
* the elements of a link set.
|
||||
*
|
||||
* __link_set_start(set)
|
||||
* This points to the first slot in the link set.
|
||||
*
|
||||
* __link_set_end(set)
|
||||
* This points to the (non-existent) slot after the last
|
||||
* entry in the link set.
|
||||
*
|
||||
* __link_set_count(set)
|
||||
* Count the number of entries in link set `set'.
|
||||
*
|
||||
* In addition, we provide the following macros for accessing link sets:
|
||||
*
|
||||
* __link_set_foreach(pvar, set)
|
||||
* Iterate over the link set `set'. Because a link set is
|
||||
* an array of pointers, pvar must be declared as "type **pvar",
|
||||
* and the actual entry accessed as "*pvar".
|
||||
*
|
||||
* __link_set_entry(set, idx)
|
||||
* Access the link set entry at index `idx' from set `set'.
|
||||
*/
|
||||
#define __link_set_foreach(pvar, set) \
|
||||
for (pvar = __link_set_start(set); pvar < __link_set_end(set); pvar++)
|
||||
|
||||
#define __link_set_entry(set, idx) (__link_set_begin(set)[idx])
|
||||
|
||||
/*
|
||||
* Some of the recend FreeBSD sources used in Bionic need this.
|
||||
* Originally, this is used to embed the rcs versions of each source file
|
||||
* in the generated binary. We certainly don't want this in Bionic.
|
||||
*/
|
||||
#define __FBSDID(s) struct __hack
|
||||
|
||||
/*-
|
||||
* The following definitions are an extension of the behavior originally
|
||||
* implemented in <sys/_posix.h>, but with a different level of granularity.
|
||||
* POSIX.1 requires that the macros we test be defined before any standard
|
||||
* header file is included.
|
||||
*
|
||||
* Here's a quick run-down of the versions:
|
||||
* defined(_POSIX_SOURCE) 1003.1-1988
|
||||
* _POSIX_C_SOURCE == 1 1003.1-1990
|
||||
* _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
|
||||
* _POSIX_C_SOURCE == 199309 1003.1b-1993
|
||||
* _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
|
||||
* and the omnibus ISO/IEC 9945-1: 1996
|
||||
* _POSIX_C_SOURCE == 200112 1003.1-2001
|
||||
* _POSIX_C_SOURCE == 200809 1003.1-2008
|
||||
*
|
||||
* In addition, the X/Open Portability Guide, which is now the Single UNIX
|
||||
* Specification, defines a feature-test macro which indicates the version of
|
||||
* that specification, and which subsumes _POSIX_C_SOURCE.
|
||||
*
|
||||
* Our macros begin with two underscores to avoid namespace screwage.
|
||||
*/
|
||||
|
||||
/* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1. */
|
||||
#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 1
|
||||
#undef _POSIX_C_SOURCE /* Probably illegal, but beyond caring now. */
|
||||
#define _POSIX_C_SOURCE 199009
|
||||
#endif
|
||||
|
||||
/* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2. */
|
||||
#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 2
|
||||
#undef _POSIX_C_SOURCE
|
||||
#define _POSIX_C_SOURCE 199209
|
||||
#endif
|
||||
|
||||
/* Deal with various X/Open Portability Guides and Single UNIX Spec. */
|
||||
#ifdef _XOPEN_SOURCE
|
||||
#if _XOPEN_SOURCE - 0 >= 700
|
||||
#define __XSI_VISIBLE 700
|
||||
#undef _POSIX_C_SOURCE
|
||||
#define _POSIX_C_SOURCE 200809
|
||||
#elif _XOPEN_SOURCE - 0 >= 600
|
||||
#define __XSI_VISIBLE 600
|
||||
#undef _POSIX_C_SOURCE
|
||||
#define _POSIX_C_SOURCE 200112
|
||||
#elif _XOPEN_SOURCE - 0 >= 500
|
||||
#define __XSI_VISIBLE 500
|
||||
#undef _POSIX_C_SOURCE
|
||||
#define _POSIX_C_SOURCE 199506
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Deal with all versions of POSIX. The ordering relative to the tests above is
|
||||
* important.
|
||||
*/
|
||||
#if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
|
||||
#define _POSIX_C_SOURCE 198808
|
||||
#endif
|
||||
#ifdef _POSIX_C_SOURCE
|
||||
#if _POSIX_C_SOURCE >= 200809
|
||||
#define __POSIX_VISIBLE 200809
|
||||
#define __ISO_C_VISIBLE 1999
|
||||
#elif _POSIX_C_SOURCE >= 200112
|
||||
#define __POSIX_VISIBLE 200112
|
||||
#define __ISO_C_VISIBLE 1999
|
||||
#elif _POSIX_C_SOURCE >= 199506
|
||||
#define __POSIX_VISIBLE 199506
|
||||
#define __ISO_C_VISIBLE 1990
|
||||
#elif _POSIX_C_SOURCE >= 199309
|
||||
#define __POSIX_VISIBLE 199309
|
||||
#define __ISO_C_VISIBLE 1990
|
||||
#elif _POSIX_C_SOURCE >= 199209
|
||||
#define __POSIX_VISIBLE 199209
|
||||
#define __ISO_C_VISIBLE 1990
|
||||
#elif _POSIX_C_SOURCE >= 199009
|
||||
#define __POSIX_VISIBLE 199009
|
||||
#define __ISO_C_VISIBLE 1990
|
||||
#else
|
||||
#define __POSIX_VISIBLE 198808
|
||||
#define __ISO_C_VISIBLE 0
|
||||
#endif /* _POSIX_C_SOURCE */
|
||||
#else
|
||||
/*-
|
||||
* Deal with _ANSI_SOURCE:
|
||||
* If it is defined, and no other compilation environment is explicitly
|
||||
* requested, then define our internal feature-test macros to zero. This
|
||||
* makes no difference to the preprocessor (undefined symbols in preprocessing
|
||||
* expressions are defined to have value zero), but makes it more convenient for
|
||||
* a test program to print out the values.
|
||||
*
|
||||
* If a program mistakenly defines _ANSI_SOURCE and some other macro such as
|
||||
* _POSIX_C_SOURCE, we will assume that it wants the broader compilation
|
||||
* environment (and in fact we will never get here).
|
||||
*/
|
||||
#if defined(_ANSI_SOURCE) /* Hide almost everything. */
|
||||
#define __POSIX_VISIBLE 0
|
||||
#define __XSI_VISIBLE 0
|
||||
#define __BSD_VISIBLE 0
|
||||
#define __ISO_C_VISIBLE 1990
|
||||
#elif defined(_C99_SOURCE) /* Localism to specify strict C99 env. */
|
||||
#define __POSIX_VISIBLE 0
|
||||
#define __XSI_VISIBLE 0
|
||||
#define __BSD_VISIBLE 0
|
||||
#define __ISO_C_VISIBLE 1999
|
||||
#else /* Default environment: show everything. */
|
||||
#define __POSIX_VISIBLE 200809
|
||||
#define __XSI_VISIBLE 700
|
||||
#define __BSD_VISIBLE 1
|
||||
#define __ISO_C_VISIBLE 1999
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Default values.
|
||||
*/
|
||||
#ifndef __XPG_VISIBLE
|
||||
# define __XPG_VISIBLE 700
|
||||
#endif
|
||||
#ifndef __POSIX_VISIBLE
|
||||
# define __POSIX_VISIBLE 200809
|
||||
#endif
|
||||
#ifndef __ISO_C_VISIBLE
|
||||
# define __ISO_C_VISIBLE 1999
|
||||
#endif
|
||||
#ifndef __BSD_VISIBLE
|
||||
# define __BSD_VISIBLE 1
|
||||
#endif
|
||||
|
||||
#define __BIONIC__ 1
|
||||
|
||||
#endif /* !_SYS_CDEFS_H_ */
|
||||
292
ndk/platforms/android-9/include/sys/linux-syscalls.h
Normal file
292
ndk/platforms/android-9/include/sys/linux-syscalls.h
Normal file
@@ -0,0 +1,292 @@
|
||||
/* auto-generated by gensyscalls.py, do not touch */
|
||||
#ifndef _BIONIC_LINUX_SYSCALLS_H_
|
||||
|
||||
#if !defined __ASM_ARM_UNISTD_H && !defined __ASM_I386_UNISTD_H
|
||||
#if defined __arm__ && !defined __ARM_EABI__ && !defined __thumb__
|
||||
# define __NR_SYSCALL_BASE 0x900000
|
||||
#else
|
||||
# define __NR_SYSCALL_BASE 0
|
||||
#endif
|
||||
|
||||
#define __NR_exit (__NR_SYSCALL_BASE + 1)
|
||||
#define __NR_fork (__NR_SYSCALL_BASE + 2)
|
||||
#define __NR_clone (__NR_SYSCALL_BASE + 120)
|
||||
#define __NR_execve (__NR_SYSCALL_BASE + 11)
|
||||
#define __NR_setuid32 (__NR_SYSCALL_BASE + 213)
|
||||
#define __NR_getuid32 (__NR_SYSCALL_BASE + 199)
|
||||
#define __NR_getgid32 (__NR_SYSCALL_BASE + 200)
|
||||
#define __NR_geteuid32 (__NR_SYSCALL_BASE + 201)
|
||||
#define __NR_getegid32 (__NR_SYSCALL_BASE + 202)
|
||||
#define __NR_getresuid32 (__NR_SYSCALL_BASE + 209)
|
||||
#define __NR_getresgid32 (__NR_SYSCALL_BASE + 211)
|
||||
#define __NR_gettid (__NR_SYSCALL_BASE + 224)
|
||||
#define __NR_getgroups32 (__NR_SYSCALL_BASE + 205)
|
||||
#define __NR_getpgid (__NR_SYSCALL_BASE + 132)
|
||||
#define __NR_getppid (__NR_SYSCALL_BASE + 64)
|
||||
#define __NR_setsid (__NR_SYSCALL_BASE + 66)
|
||||
#define __NR_setgid32 (__NR_SYSCALL_BASE + 214)
|
||||
#define __NR_setreuid32 (__NR_SYSCALL_BASE + 203)
|
||||
#define __NR_setresuid32 (__NR_SYSCALL_BASE + 208)
|
||||
#define __NR_setresgid32 (__NR_SYSCALL_BASE + 210)
|
||||
#define __NR_brk (__NR_SYSCALL_BASE + 45)
|
||||
#define __NR_ptrace (__NR_SYSCALL_BASE + 26)
|
||||
#define __NR_getpriority (__NR_SYSCALL_BASE + 96)
|
||||
#define __NR_setpriority (__NR_SYSCALL_BASE + 97)
|
||||
#define __NR_setrlimit (__NR_SYSCALL_BASE + 75)
|
||||
#define __NR_ugetrlimit (__NR_SYSCALL_BASE + 191)
|
||||
#define __NR_getrusage (__NR_SYSCALL_BASE + 77)
|
||||
#define __NR_setgroups32 (__NR_SYSCALL_BASE + 206)
|
||||
#define __NR_setpgid (__NR_SYSCALL_BASE + 57)
|
||||
#define __NR_setregid32 (__NR_SYSCALL_BASE + 204)
|
||||
#define __NR_chroot (__NR_SYSCALL_BASE + 61)
|
||||
#define __NR_prctl (__NR_SYSCALL_BASE + 172)
|
||||
#define __NR_capget (__NR_SYSCALL_BASE + 184)
|
||||
#define __NR_capset (__NR_SYSCALL_BASE + 185)
|
||||
#define __NR_sigaltstack (__NR_SYSCALL_BASE + 186)
|
||||
#define __NR_acct (__NR_SYSCALL_BASE + 51)
|
||||
#define __NR_read (__NR_SYSCALL_BASE + 3)
|
||||
#define __NR_write (__NR_SYSCALL_BASE + 4)
|
||||
#define __NR_pread64 (__NR_SYSCALL_BASE + 180)
|
||||
#define __NR_pwrite64 (__NR_SYSCALL_BASE + 181)
|
||||
#define __NR_open (__NR_SYSCALL_BASE + 5)
|
||||
#define __NR_close (__NR_SYSCALL_BASE + 6)
|
||||
#define __NR_lseek (__NR_SYSCALL_BASE + 19)
|
||||
#define __NR__llseek (__NR_SYSCALL_BASE + 140)
|
||||
#define __NR_getpid (__NR_SYSCALL_BASE + 20)
|
||||
#define __NR_mmap2 (__NR_SYSCALL_BASE + 192)
|
||||
#define __NR_munmap (__NR_SYSCALL_BASE + 91)
|
||||
#define __NR_mremap (__NR_SYSCALL_BASE + 163)
|
||||
#define __NR_msync (__NR_SYSCALL_BASE + 144)
|
||||
#define __NR_mprotect (__NR_SYSCALL_BASE + 125)
|
||||
#define __NR_mlock (__NR_SYSCALL_BASE + 150)
|
||||
#define __NR_munlock (__NR_SYSCALL_BASE + 151)
|
||||
#define __NR_ioctl (__NR_SYSCALL_BASE + 54)
|
||||
#define __NR_readv (__NR_SYSCALL_BASE + 145)
|
||||
#define __NR_writev (__NR_SYSCALL_BASE + 146)
|
||||
#define __NR_fcntl (__NR_SYSCALL_BASE + 55)
|
||||
#define __NR_flock (__NR_SYSCALL_BASE + 143)
|
||||
#define __NR_fchmod (__NR_SYSCALL_BASE + 94)
|
||||
#define __NR_dup (__NR_SYSCALL_BASE + 41)
|
||||
#define __NR_pipe (__NR_SYSCALL_BASE + 42)
|
||||
#define __NR_dup2 (__NR_SYSCALL_BASE + 63)
|
||||
#define __NR__newselect (__NR_SYSCALL_BASE + 142)
|
||||
#define __NR_ftruncate (__NR_SYSCALL_BASE + 93)
|
||||
#define __NR_fsync (__NR_SYSCALL_BASE + 118)
|
||||
#define __NR_fdatasync (__NR_SYSCALL_BASE + 148)
|
||||
#define __NR_fchown32 (__NR_SYSCALL_BASE + 207)
|
||||
#define __NR_sync (__NR_SYSCALL_BASE + 36)
|
||||
#define __NR_fcntl64 (__NR_SYSCALL_BASE + 221)
|
||||
#define __NR_sendfile (__NR_SYSCALL_BASE + 187)
|
||||
#define __NR_link (__NR_SYSCALL_BASE + 9)
|
||||
#define __NR_unlink (__NR_SYSCALL_BASE + 10)
|
||||
#define __NR_chdir (__NR_SYSCALL_BASE + 12)
|
||||
#define __NR_mknod (__NR_SYSCALL_BASE + 14)
|
||||
#define __NR_chmod (__NR_SYSCALL_BASE + 15)
|
||||
#define __NR_chown32 (__NR_SYSCALL_BASE + 212)
|
||||
#define __NR_lchown32 (__NR_SYSCALL_BASE + 198)
|
||||
#define __NR_mount (__NR_SYSCALL_BASE + 21)
|
||||
#define __NR_umount2 (__NR_SYSCALL_BASE + 52)
|
||||
#define __NR_fstat64 (__NR_SYSCALL_BASE + 197)
|
||||
#define __NR_stat64 (__NR_SYSCALL_BASE + 195)
|
||||
#define __NR_lstat64 (__NR_SYSCALL_BASE + 196)
|
||||
#define __NR_mkdir (__NR_SYSCALL_BASE + 39)
|
||||
#define __NR_readlink (__NR_SYSCALL_BASE + 85)
|
||||
#define __NR_rmdir (__NR_SYSCALL_BASE + 40)
|
||||
#define __NR_rename (__NR_SYSCALL_BASE + 38)
|
||||
#define __NR_getcwd (__NR_SYSCALL_BASE + 183)
|
||||
#define __NR_access (__NR_SYSCALL_BASE + 33)
|
||||
#define __NR_symlink (__NR_SYSCALL_BASE + 83)
|
||||
#define __NR_fchdir (__NR_SYSCALL_BASE + 133)
|
||||
#define __NR_truncate (__NR_SYSCALL_BASE + 92)
|
||||
#define __NR_pause (__NR_SYSCALL_BASE + 29)
|
||||
#define __NR_gettimeofday (__NR_SYSCALL_BASE + 78)
|
||||
#define __NR_settimeofday (__NR_SYSCALL_BASE + 79)
|
||||
#define __NR_times (__NR_SYSCALL_BASE + 43)
|
||||
#define __NR_nanosleep (__NR_SYSCALL_BASE + 162)
|
||||
#define __NR_getitimer (__NR_SYSCALL_BASE + 105)
|
||||
#define __NR_setitimer (__NR_SYSCALL_BASE + 104)
|
||||
#define __NR_sigaction (__NR_SYSCALL_BASE + 67)
|
||||
#define __NR_sigprocmask (__NR_SYSCALL_BASE + 126)
|
||||
#define __NR_sigsuspend (__NR_SYSCALL_BASE + 72)
|
||||
#define __NR_rt_sigaction (__NR_SYSCALL_BASE + 174)
|
||||
#define __NR_rt_sigprocmask (__NR_SYSCALL_BASE + 175)
|
||||
#define __NR_rt_sigtimedwait (__NR_SYSCALL_BASE + 177)
|
||||
#define __NR_sigpending (__NR_SYSCALL_BASE + 73)
|
||||
#define __NR_sched_setscheduler (__NR_SYSCALL_BASE + 156)
|
||||
#define __NR_sched_getscheduler (__NR_SYSCALL_BASE + 157)
|
||||
#define __NR_sched_yield (__NR_SYSCALL_BASE + 158)
|
||||
#define __NR_sched_setparam (__NR_SYSCALL_BASE + 154)
|
||||
#define __NR_sched_getparam (__NR_SYSCALL_BASE + 155)
|
||||
#define __NR_sched_get_priority_max (__NR_SYSCALL_BASE + 159)
|
||||
#define __NR_sched_get_priority_min (__NR_SYSCALL_BASE + 160)
|
||||
#define __NR_sched_rr_get_interval (__NR_SYSCALL_BASE + 161)
|
||||
#define __NR_uname (__NR_SYSCALL_BASE + 122)
|
||||
#define __NR_wait4 (__NR_SYSCALL_BASE + 114)
|
||||
#define __NR_umask (__NR_SYSCALL_BASE + 60)
|
||||
#define __NR_reboot (__NR_SYSCALL_BASE + 88)
|
||||
#define __NR_syslog (__NR_SYSCALL_BASE + 103)
|
||||
#define __NR_init_module (__NR_SYSCALL_BASE + 128)
|
||||
#define __NR_delete_module (__NR_SYSCALL_BASE + 129)
|
||||
#define __NR_syslog (__NR_SYSCALL_BASE + 103)
|
||||
#define __NR_sysinfo (__NR_SYSCALL_BASE + 116)
|
||||
#define __NR_futex (__NR_SYSCALL_BASE + 240)
|
||||
#define __NR_poll (__NR_SYSCALL_BASE + 168)
|
||||
|
||||
#ifdef __arm__
|
||||
#define __NR_exit_group (__NR_SYSCALL_BASE + 248)
|
||||
#define __NR_waitid (__NR_SYSCALL_BASE + 280)
|
||||
#define __NR_vfork (__NR_SYSCALL_BASE + 190)
|
||||
#define __NR_openat (__NR_SYSCALL_BASE + 322)
|
||||
#define __NR_madvise (__NR_SYSCALL_BASE + 220)
|
||||
#define __NR_mincore (__NR_SYSCALL_BASE + 219)
|
||||
#define __NR_pipe2 (__NR_SYSCALL_BASE + 359)
|
||||
#define __NR_getdents64 (__NR_SYSCALL_BASE + 217)
|
||||
#define __NR_fstatfs64 (__NR_SYSCALL_BASE + 267)
|
||||
#define __NR_fstatat64 (__NR_SYSCALL_BASE + 327)
|
||||
#define __NR_mkdirat (__NR_SYSCALL_BASE + 323)
|
||||
#define __NR_fchownat (__NR_SYSCALL_BASE + 325)
|
||||
#define __NR_fchmodat (__NR_SYSCALL_BASE + 333)
|
||||
#define __NR_renameat (__NR_SYSCALL_BASE + 329)
|
||||
#define __NR_unlinkat (__NR_SYSCALL_BASE + 328)
|
||||
#define __NR_statfs64 (__NR_SYSCALL_BASE + 266)
|
||||
#define __NR_clock_gettime (__NR_SYSCALL_BASE + 263)
|
||||
#define __NR_clock_settime (__NR_SYSCALL_BASE + 262)
|
||||
#define __NR_clock_getres (__NR_SYSCALL_BASE + 264)
|
||||
#define __NR_clock_nanosleep (__NR_SYSCALL_BASE + 265)
|
||||
#define __NR_timer_create (__NR_SYSCALL_BASE + 257)
|
||||
#define __NR_timer_settime (__NR_SYSCALL_BASE + 258)
|
||||
#define __NR_timer_gettime (__NR_SYSCALL_BASE + 259)
|
||||
#define __NR_timer_getoverrun (__NR_SYSCALL_BASE + 260)
|
||||
#define __NR_timer_delete (__NR_SYSCALL_BASE + 261)
|
||||
#define __NR_utimes (__NR_SYSCALL_BASE + 269)
|
||||
#define __NR_socket (__NR_SYSCALL_BASE + 281)
|
||||
#define __NR_socketpair (__NR_SYSCALL_BASE + 288)
|
||||
#define __NR_bind (__NR_SYSCALL_BASE + 282)
|
||||
#define __NR_connect (__NR_SYSCALL_BASE + 283)
|
||||
#define __NR_listen (__NR_SYSCALL_BASE + 284)
|
||||
#define __NR_accept (__NR_SYSCALL_BASE + 285)
|
||||
#define __NR_getsockname (__NR_SYSCALL_BASE + 286)
|
||||
#define __NR_getpeername (__NR_SYSCALL_BASE + 287)
|
||||
#define __NR_sendto (__NR_SYSCALL_BASE + 290)
|
||||
#define __NR_recvfrom (__NR_SYSCALL_BASE + 292)
|
||||
#define __NR_shutdown (__NR_SYSCALL_BASE + 293)
|
||||
#define __NR_setsockopt (__NR_SYSCALL_BASE + 294)
|
||||
#define __NR_getsockopt (__NR_SYSCALL_BASE + 295)
|
||||
#define __NR_sendmsg (__NR_SYSCALL_BASE + 296)
|
||||
#define __NR_recvmsg (__NR_SYSCALL_BASE + 297)
|
||||
#define __NR_ioprio_set (__NR_SYSCALL_BASE + 314)
|
||||
#define __NR_ioprio_get (__NR_SYSCALL_BASE + 315)
|
||||
#define __NR_epoll_create (__NR_SYSCALL_BASE + 250)
|
||||
#define __NR_epoll_ctl (__NR_SYSCALL_BASE + 251)
|
||||
#define __NR_epoll_wait (__NR_SYSCALL_BASE + 252)
|
||||
#define __NR_inotify_init (__NR_SYSCALL_BASE + 316)
|
||||
#define __NR_inotify_add_watch (__NR_SYSCALL_BASE + 317)
|
||||
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 318)
|
||||
#define __NR_eventfd2 (__NR_SYSCALL_BASE + 356)
|
||||
#define __NR_ARM_set_tls (__NR_SYSCALL_BASE + 983045)
|
||||
#define __NR_ARM_cacheflush (__NR_SYSCALL_BASE + 983042)
|
||||
#endif
|
||||
|
||||
#ifdef __i386__
|
||||
#define __NR_exit_group (__NR_SYSCALL_BASE + 252)
|
||||
#define __NR_waitpid (__NR_SYSCALL_BASE + 7)
|
||||
#define __NR_waitid (__NR_SYSCALL_BASE + 284)
|
||||
#define __NR_kill (__NR_SYSCALL_BASE + 37)
|
||||
#define __NR_tkill (__NR_SYSCALL_BASE + 238)
|
||||
#define __NR_set_thread_area (__NR_SYSCALL_BASE + 243)
|
||||
#define __NR_openat (__NR_SYSCALL_BASE + 295)
|
||||
#define __NR_madvise (__NR_SYSCALL_BASE + 219)
|
||||
#define __NR_mincore (__NR_SYSCALL_BASE + 218)
|
||||
#define __NR_pipe2 (__NR_SYSCALL_BASE + 331)
|
||||
#define __NR_getdents64 (__NR_SYSCALL_BASE + 220)
|
||||
#define __NR_fstatfs64 (__NR_SYSCALL_BASE + 269)
|
||||
#define __NR_fstatat64 (__NR_SYSCALL_BASE + 300)
|
||||
#define __NR_mkdirat (__NR_SYSCALL_BASE + 296)
|
||||
#define __NR_fchownat (__NR_SYSCALL_BASE + 298)
|
||||
#define __NR_fchmodat (__NR_SYSCALL_BASE + 306)
|
||||
#define __NR_renameat (__NR_SYSCALL_BASE + 302)
|
||||
#define __NR_unlinkat (__NR_SYSCALL_BASE + 301)
|
||||
#define __NR_statfs64 (__NR_SYSCALL_BASE + 268)
|
||||
#define __NR_clock_gettime (__NR_SYSCALL_BASE + 265)
|
||||
#define __NR_clock_settime (__NR_SYSCALL_BASE + 264)
|
||||
#define __NR_clock_getres (__NR_SYSCALL_BASE + 266)
|
||||
#define __NR_clock_nanosleep (__NR_SYSCALL_BASE + 267)
|
||||
#define __NR_timer_create (__NR_SYSCALL_BASE + 259)
|
||||
#define __NR_timer_settime (__NR_SYSCALL_BASE + 260)
|
||||
#define __NR_timer_gettime (__NR_SYSCALL_BASE + 261)
|
||||
#define __NR_timer_getoverrun (__NR_SYSCALL_BASE + 262)
|
||||
#define __NR_timer_delete (__NR_SYSCALL_BASE + 263)
|
||||
#define __NR_utimes (__NR_SYSCALL_BASE + 271)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_ioprio_set (__NR_SYSCALL_BASE + 289)
|
||||
#define __NR_ioprio_get (__NR_SYSCALL_BASE + 290)
|
||||
#define __NR_epoll_create (__NR_SYSCALL_BASE + 254)
|
||||
#define __NR_epoll_ctl (__NR_SYSCALL_BASE + 255)
|
||||
#define __NR_epoll_wait (__NR_SYSCALL_BASE + 256)
|
||||
#define __NR_inotify_init (__NR_SYSCALL_BASE + 291)
|
||||
#define __NR_inotify_add_watch (__NR_SYSCALL_BASE + 292)
|
||||
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 293)
|
||||
#define __NR_eventfd2 (__NR_SYSCALL_BASE + 328)
|
||||
#endif
|
||||
|
||||
#if defined(__SH3__) || defined(__SH4__)
|
||||
#define __NR_exit_group (__NR_SYSCALL_BASE + 252)
|
||||
#define __NR_waitpid (__NR_SYSCALL_BASE + 7)
|
||||
#define __NR_waitid (__NR_SYSCALL_BASE + 284)
|
||||
#define __NR_kill (__NR_SYSCALL_BASE + 37)
|
||||
#define __NR_tkill (__NR_SYSCALL_BASE + 238)
|
||||
#define __NR_set_thread_area (__NR_SYSCALL_BASE + 243)
|
||||
#define __NR_vfork (__NR_SYSCALL_BASE + 190)
|
||||
#define __NR_openat (__NR_SYSCALL_BASE + 295)
|
||||
#define __NR_madvise (__NR_SYSCALL_BASE + 219)
|
||||
#define __NR_mincore (__NR_SYSCALL_BASE + 218)
|
||||
#define __NR_pipe2 (__NR_SYSCALL_BASE + 331)
|
||||
#define __NR_getdents64 (__NR_SYSCALL_BASE + 220)
|
||||
#define __NR_fstatfs64 (__NR_SYSCALL_BASE + 269)
|
||||
#define __NR_fstatat64 (__NR_SYSCALL_BASE + 300)
|
||||
#define __NR_mkdirat (__NR_SYSCALL_BASE + 296)
|
||||
#define __NR_fchownat (__NR_SYSCALL_BASE + 298)
|
||||
#define __NR_fchmodat (__NR_SYSCALL_BASE + 306)
|
||||
#define __NR_renameat (__NR_SYSCALL_BASE + 302)
|
||||
#define __NR_unlinkat (__NR_SYSCALL_BASE + 301)
|
||||
#define __NR_statfs64 (__NR_SYSCALL_BASE + 268)
|
||||
#define __NR_clock_gettime (__NR_SYSCALL_BASE + 265)
|
||||
#define __NR_clock_settime (__NR_SYSCALL_BASE + 264)
|
||||
#define __NR_clock_getres (__NR_SYSCALL_BASE + 266)
|
||||
#define __NR_clock_nanosleep (__NR_SYSCALL_BASE + 267)
|
||||
#define __NR_timer_create (__NR_SYSCALL_BASE + 259)
|
||||
#define __NR_timer_settime (__NR_SYSCALL_BASE + 260)
|
||||
#define __NR_timer_gettime (__NR_SYSCALL_BASE + 261)
|
||||
#define __NR_timer_getoverrun (__NR_SYSCALL_BASE + 262)
|
||||
#define __NR_timer_delete (__NR_SYSCALL_BASE + 263)
|
||||
#define __NR_utimes (__NR_SYSCALL_BASE + 271)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR___socketcall (__NR_SYSCALL_BASE + 102)
|
||||
#define __NR_ioprio_set (__NR_SYSCALL_BASE + 288)
|
||||
#define __NR_ioprio_get (__NR_SYSCALL_BASE + 289)
|
||||
#define __NR_epoll_create (__NR_SYSCALL_BASE + 254)
|
||||
#define __NR_epoll_ctl (__NR_SYSCALL_BASE + 255)
|
||||
#define __NR_epoll_wait (__NR_SYSCALL_BASE + 256)
|
||||
#define __NR_inotify_init (__NR_SYSCALL_BASE + 290)
|
||||
#define __NR_inotify_add_watch (__NR_SYSCALL_BASE + 291)
|
||||
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 292)
|
||||
#define __NR_eventfd2 (__NR_SYSCALL_BASE + 328)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* _BIONIC_LINUX_SYSCALLS_H_ */
|
||||
212
ndk/platforms/android-9/include/sys/linux-unistd.h
Normal file
212
ndk/platforms/android-9/include/sys/linux-unistd.h
Normal file
@@ -0,0 +1,212 @@
|
||||
/* auto-generated by gensyscalls.py, do not touch */
|
||||
#ifndef _BIONIC_LINUX_UNISTD_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void _exit (int);
|
||||
void _exit_thread (int);
|
||||
pid_t __fork (void);
|
||||
pid_t _waitpid (pid_t, int*, int, struct rusage*);
|
||||
int __waitid (int, pid_t, struct siginfo_t*, int,void*);
|
||||
pid_t __sys_clone (int, void*, int*, void*, int*);
|
||||
int execve (const char*, char* const*, char* const*);
|
||||
int __setuid (uid_t);
|
||||
uid_t getuid (void);
|
||||
gid_t getgid (void);
|
||||
uid_t geteuid (void);
|
||||
gid_t getegid (void);
|
||||
uid_t getresuid (void);
|
||||
gid_t getresgid (void);
|
||||
pid_t gettid (void);
|
||||
int getgroups (int, gid_t *);
|
||||
pid_t getpgid (pid_t);
|
||||
pid_t getppid (void);
|
||||
pid_t setsid (void);
|
||||
int setgid (gid_t);
|
||||
int seteuid (uid_t);
|
||||
int __setreuid (uid_t, uid_t);
|
||||
int __setresuid (uid_t, uid_t, uid_t);
|
||||
int setresgid (gid_t, gid_t, gid_t);
|
||||
void* __brk (void*);
|
||||
int kill (pid_t, int);
|
||||
int tkill (pid_t tid, int sig);
|
||||
int __ptrace (int request, int pid, void* addr, void* data);
|
||||
int __set_thread_area (void* user_desc);
|
||||
int __getpriority (int, int);
|
||||
int setpriority (int, int, int);
|
||||
int setrlimit (int resource, const struct rlimit *rlp);
|
||||
int getrlimit (int resource, struct rlimit *rlp);
|
||||
int getrusage (int who, struct rusage* r_usage);
|
||||
int setgroups (int, const gid_t *);
|
||||
pid_t getpgrp (void);
|
||||
int setpgid (pid_t, pid_t);
|
||||
pid_t vfork (void);
|
||||
int setregid (gid_t, gid_t);
|
||||
int chroot (const char *);
|
||||
int prctl (int option, unsigned int arg2, unsigned int arg3, unsigned int arg4, unsigned int arg5);
|
||||
int capget (cap_user_header_t header, cap_user_data_t data);
|
||||
int capset (cap_user_header_t header, const cap_user_data_t data);
|
||||
int sigaltstack (const stack_t*, stack_t*);
|
||||
int acct (const char* filepath);
|
||||
ssize_t read (int, void*, size_t);
|
||||
ssize_t write (int, const void*, size_t);
|
||||
ssize_t __pread64 (int, void *, size_t, off_t, off_t);
|
||||
ssize_t __pwrite64 (int, void *, size_t, off_t, off_t);
|
||||
int __open (const char*, int, mode_t);
|
||||
int __openat (int, const char*, int, mode_t);
|
||||
int close (int);
|
||||
int creat (const char*, mode_t);
|
||||
off_t lseek (int, off_t, int);
|
||||
int __llseek (int, unsigned long, unsigned long, loff_t*, int);
|
||||
pid_t getpid (void);
|
||||
void * mmap (void *, size_t, int, int, int, long);
|
||||
void * __mmap2 (void*, size_t, int, int, int, long);
|
||||
int munmap (void *, size_t);
|
||||
void * mremap (void *, size_t, size_t, unsigned long);
|
||||
int msync (const void *, size_t, int);
|
||||
int mprotect (const void *, size_t, int);
|
||||
int madvise (const void *, size_t, int);
|
||||
int mlock (const void *addr, size_t len);
|
||||
int munlock (const void *addr, size_t len);
|
||||
int mincore (void* start, size_t length, unsigned char* vec);
|
||||
int __ioctl (int, int, void *);
|
||||
int readv (int, const struct iovec *, int);
|
||||
int writev (int, const struct iovec *, int);
|
||||
int __fcntl (int, int, void*);
|
||||
int flock (int, int);
|
||||
int fchmod (int, mode_t);
|
||||
int dup (int);
|
||||
int pipe (int *);
|
||||
int pipe2 (int *, int);
|
||||
int dup2 (int, int);
|
||||
int select (int, struct fd_set *, struct fd_set *, struct fd_set *, struct timeval *);
|
||||
int ftruncate (int, off_t);
|
||||
int getdents (unsigned int, struct dirent *, unsigned int);
|
||||
int fsync (int);
|
||||
int fdatasync (int);
|
||||
int fchown (int, uid_t, gid_t);
|
||||
void sync (void);
|
||||
int __fcntl64 (int, int, void *);
|
||||
int __fstatfs64 (int, size_t, struct statfs *);
|
||||
ssize_t sendfile (int out_fd, int in_fd, off_t *offset, size_t count);
|
||||
int fstatat (int dirfd, const char *path, struct stat *buf, int flags);
|
||||
int mkdirat (int dirfd, const char *pathname, mode_t mode);
|
||||
int fchownat (int dirfd, const char *path, uid_t owner, gid_t group, int flags);
|
||||
int fchmodat (int dirfd, const char *path, mode_t mode, int flags);
|
||||
int renameat (int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
|
||||
int link (const char*, const char*);
|
||||
int unlink (const char*);
|
||||
int unlinkat (int, const char *, int);
|
||||
int chdir (const char*);
|
||||
int mknod (const char*, mode_t, dev_t);
|
||||
int chmod (const char*,mode_t);
|
||||
int chown (const char *, uid_t, gid_t);
|
||||
int lchown (const char*, uid_t, gid_t);
|
||||
int mount (const char*, const char*, const char*, unsigned long, const void*);
|
||||
int umount (const char*);
|
||||
int umount2 (const char*, int);
|
||||
int fstat (int, struct stat*);
|
||||
int stat (const char *, struct stat *);
|
||||
int lstat (const char *, struct stat *);
|
||||
int mkdir (const char *, mode_t);
|
||||
int readlink (const char *, char *, size_t);
|
||||
int rmdir (const char *);
|
||||
int rename (const char *, const char *);
|
||||
int __getcwd (char * buf, size_t size);
|
||||
int access (const char *, int);
|
||||
int symlink (const char *, const char *);
|
||||
int fchdir (int);
|
||||
int truncate (const char*, off_t);
|
||||
int __statfs64 (const char *, size_t, struct statfs *);
|
||||
int pause (void);
|
||||
int gettimeofday (struct timeval*, struct timezone*);
|
||||
int settimeofday (const struct timeval*, const struct timezone*);
|
||||
clock_t times (struct tms *);
|
||||
int nanosleep (const struct timespec *, struct timespec *);
|
||||
int clock_gettime (clockid_t clk_id, struct timespec *tp);
|
||||
int clock_settime (clockid_t clk_id, const struct timespec *tp);
|
||||
int clock_getres (clockid_t clk_id, struct timespec *res);
|
||||
int clock_nanosleep (const struct timespec *req, struct timespec *rem);
|
||||
int getitimer (int, const struct itimerval *);
|
||||
int setitimer (int, const struct itimerval *, struct itimerval *);
|
||||
int __timer_create (clockid_t clockid, struct sigevent *evp, timer_t *timerid);
|
||||
int __timer_settime (timer_t, int, const struct itimerspec*, struct itimerspec*);
|
||||
int __timer_gettime (timer_t, struct itimerspec*);
|
||||
int __timer_getoverrun (timer_t);
|
||||
int __timer_delete (timer_t);
|
||||
int utimes (const char*, const struct timeval tvp[2]);
|
||||
int sigaction (int, const struct sigaction *, struct sigaction *);
|
||||
int sigprocmask (int, const sigset_t *, sigset_t *);
|
||||
int __sigsuspend (int unused1, int unused2, unsigned mask);
|
||||
int __rt_sigaction (int sig, const struct sigaction *act, struct sigaction *oact, size_t sigsetsize);
|
||||
int __rt_sigprocmask (int how, const sigset_t *set, sigset_t *oset, size_t sigsetsize);
|
||||
int __rt_sigtimedwait (const sigset_t *set, struct siginfo_t *info, struct timespec_t *timeout, size_t sigset_size);
|
||||
int sigpending (sigset_t *);
|
||||
int socket (int, int, int);
|
||||
int socketpair (int, int, int, int*);
|
||||
int bind (int, struct sockaddr *, int);
|
||||
int connect (int, struct sockaddr *, socklen_t);
|
||||
int listen (int, int);
|
||||
int accept (int, struct sockaddr *, socklen_t *);
|
||||
int getsockname (int, struct sockaddr *, socklen_t *);
|
||||
int getpeername (int, struct sockaddr *, socklen_t *);
|
||||
int sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
|
||||
int recvfrom (int, void *, size_t, unsigned int, struct sockaddr *, socklen_t *);
|
||||
int shutdown (int, int);
|
||||
int setsockopt (int, int, int, const void *, socklen_t);
|
||||
int getsockopt (int, int, int, void *, socklen_t *);
|
||||
int sendmsg (int, const struct msghdr *, unsigned int);
|
||||
int recvmsg (int, struct msghdr *, unsigned int);
|
||||
int socket (int, int, int);
|
||||
int bind (int, struct sockaddr *, int);
|
||||
int connect (int, struct sockaddr *, socklen_t);
|
||||
int listen (int, int);
|
||||
int accept (int, struct sockaddr *, socklen_t *);
|
||||
int getsockname (int, struct sockaddr *, socklen_t *);
|
||||
int getpeername (int, struct sockaddr *, socklen_t *);
|
||||
int socketpair (int, int, int, int*);
|
||||
int sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
|
||||
int recvfrom (int, void *, size_t, unsigned int, struct sockaddr *, socklen_t *);
|
||||
int shutdown (int, int);
|
||||
int setsockopt (int, int, int, const void *, socklen_t);
|
||||
int getsockopt (int, int, int, void *, socklen_t *);
|
||||
int sendmsg (int, const struct msghdr *, unsigned int);
|
||||
int recvmsg (int, struct msghdr *, unsigned int);
|
||||
int __socketcall (int, unsigned long*);
|
||||
int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param);
|
||||
int sched_getscheduler (pid_t pid);
|
||||
int sched_yield (void);
|
||||
int sched_setparam (pid_t pid, const struct sched_param *param);
|
||||
int sched_getparam (pid_t pid, struct sched_param *param);
|
||||
int sched_get_priority_max (int policy);
|
||||
int sched_get_priority_min (int policy);
|
||||
int sched_rr_get_interval (pid_t pid, struct timespec *interval);
|
||||
int ioprio_set (int which, int who, int ioprio);
|
||||
int ioprio_get (int which, int who);
|
||||
int uname (struct utsname *);
|
||||
pid_t __wait4 (pid_t pid, int *status, int options, struct rusage *rusage);
|
||||
mode_t umask (mode_t);
|
||||
int __reboot (int, int, int, void *);
|
||||
int __syslog (int, char *, int);
|
||||
int init_module (void *, unsigned long, const char *);
|
||||
int delete_module (const char*, unsigned int);
|
||||
int klogctl (int, char *, int);
|
||||
int sysinfo (struct sysinfo *);
|
||||
int futex (void *, int, int, void *, void *, int);
|
||||
int epoll_create (int size);
|
||||
int epoll_ctl (int epfd, int op, int fd, struct epoll_event *event);
|
||||
int epoll_wait (int epfd, struct epoll_event *events, int max, int timeout);
|
||||
int inotify_init (void);
|
||||
int inotify_add_watch (int, const char *, unsigned int);
|
||||
int inotify_rm_watch (int, unsigned int);
|
||||
int poll (struct pollfd *, unsigned int, long);
|
||||
int eventfd (unsigned int, int);
|
||||
int __set_tls (void*);
|
||||
int cacheflush (long start, long end, long flags);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _BIONIC_LINUX_UNISTD_H_ */
|
||||
40
ndk/platforms/android-9/include/sys/sysinfo.h
Normal file
40
ndk/platforms/android-9/include/sys/sysinfo.h
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef _SYS_SYSINFO_H_
|
||||
#define _SYS_SYSINFO_H_
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
extern int sysinfo (struct sysinfo *info);
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _SYS_SYSINFO_H_ */
|
||||
63
ndk/platforms/android-9/include/sys/wait.h
Normal file
63
ndk/platforms/android-9/include/sys/wait.h
Normal file
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef _SYS_WAIT_H_
|
||||
#define _SYS_WAIT_H_
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/resource.h>
|
||||
#include <linux/wait.h>
|
||||
#include <signal.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)
|
||||
#define WCOREDUMP(s) ((s) & 0x80)
|
||||
#define WTERMSIG(s) ((s) & 0x7f)
|
||||
#define WSTOPSIG(s) WEXITSTATUS(s)
|
||||
|
||||
#define WIFEXITED(s) (WTERMSIG(s) == 0)
|
||||
#define WIFSTOPPED(s) (WTERMSIG(s) == 0x7f)
|
||||
#define WIFSIGNALED(s) (WTERMSIG((s)+1) >= 2)
|
||||
|
||||
extern pid_t wait(int *);
|
||||
extern pid_t waitpid(pid_t, int *, int);
|
||||
extern pid_t wait3(int *, int, struct rusage *);
|
||||
extern pid_t wait4(pid_t, int *, int, struct rusage *);
|
||||
|
||||
/* Posix states that idtype_t should be an enumeration type, but
|
||||
* the kernel headers define P_ALL, P_PID and P_PGID as constant macros
|
||||
* instead.
|
||||
*/
|
||||
typedef int idtype_t;
|
||||
|
||||
extern int waitid(idtype_t which, id_t id, siginfo_t *info, int options);
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _SYS_WAIT_H_ */
|
||||
211
ndk/platforms/android-9/include/unistd.h
Normal file
211
ndk/platforms/android-9/include/unistd.h
Normal file
@@ -0,0 +1,211 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef _UNISTD_H_
|
||||
#define _UNISTD_H_
|
||||
|
||||
#include <stddef.h>
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/select.h>
|
||||
#include <sys/sysconf.h>
|
||||
#include <linux/capability.h>
|
||||
#include <pathconf.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
/* Standard file descriptor numbers. */
|
||||
#define STDIN_FILENO 0
|
||||
#define STDOUT_FILENO 1
|
||||
#define STDERR_FILENO 2
|
||||
|
||||
/* Values for whence in fseek and lseek */
|
||||
#define SEEK_SET 0
|
||||
#define SEEK_CUR 1
|
||||
#define SEEK_END 2
|
||||
|
||||
extern char **environ;
|
||||
extern __noreturn void _exit(int);
|
||||
|
||||
extern pid_t fork(void);
|
||||
extern pid_t vfork(void);
|
||||
extern pid_t getpid(void);
|
||||
extern pid_t gettid(void);
|
||||
extern pid_t getpgid(pid_t);
|
||||
extern int setpgid(pid_t, pid_t);
|
||||
extern pid_t getppid(void);
|
||||
extern pid_t getpgrp(void);
|
||||
extern int setpgrp(void);
|
||||
extern pid_t setsid(void);
|
||||
|
||||
extern int execv(const char *, char * const *);
|
||||
extern int execvp(const char *, char * const *);
|
||||
extern int execve(const char *, char * const *, char * const *);
|
||||
extern int execl(const char *, const char *, ...);
|
||||
extern int execlp(const char *, const char *, ...);
|
||||
extern int execle(const char *, const char *, ...);
|
||||
extern int capget(cap_user_header_t hdrp, cap_user_data_t datap);
|
||||
extern int capset(cap_user_header_t hdrp, const cap_user_data_t datap);
|
||||
extern int prctl(int option, unsigned long arg2, unsigned long arg3,
|
||||
unsigned long arg4, unsigned long arg5);
|
||||
|
||||
extern int nice(int);
|
||||
|
||||
extern int setuid(uid_t);
|
||||
extern uid_t getuid(void);
|
||||
extern int seteuid(uid_t);
|
||||
extern uid_t geteuid(void);
|
||||
extern int setgid(gid_t);
|
||||
extern gid_t getgid(void);
|
||||
extern int setegid(gid_t);
|
||||
extern gid_t getegid(void);
|
||||
extern int getgroups(int, gid_t *);
|
||||
extern int setgroups(size_t, const gid_t *);
|
||||
extern int setreuid(uid_t, uid_t);
|
||||
extern int setregid(gid_t, gid_t);
|
||||
extern int setresuid(uid_t, uid_t, uid_t);
|
||||
extern int setresgid(gid_t, gid_t, gid_t);
|
||||
extern int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid);
|
||||
extern int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid);
|
||||
extern int issetugid(void);
|
||||
extern char* getlogin(void);
|
||||
extern char* getusershell(void);
|
||||
extern void setusershell(void);
|
||||
extern void endusershell(void);
|
||||
|
||||
|
||||
|
||||
/* Macros for access() */
|
||||
#define R_OK 4 /* Read */
|
||||
#define W_OK 2 /* Write */
|
||||
#define X_OK 1 /* Execute */
|
||||
#define F_OK 0 /* Existence */
|
||||
|
||||
extern int access(const char *, int);
|
||||
extern int link(const char *, const char *);
|
||||
extern int unlink(const char *);
|
||||
extern int chdir(const char *);
|
||||
extern int fchdir(int);
|
||||
extern int rmdir(const char *);
|
||||
extern int pipe(int *);
|
||||
#ifdef _GNU_SOURCE /* GLibc compatibility */
|
||||
extern int pipe2(int *, int);
|
||||
#endif
|
||||
extern int chroot(const char *);
|
||||
extern int symlink(const char *, const char *);
|
||||
extern int readlink(const char *, char *, size_t);
|
||||
extern int chown(const char *, uid_t, gid_t);
|
||||
extern int fchown(int, uid_t, gid_t);
|
||||
extern int lchown(const char *, uid_t, gid_t);
|
||||
extern int truncate(const char *, off_t);
|
||||
extern char *getcwd(char *, size_t);
|
||||
|
||||
extern int sync(void);
|
||||
|
||||
extern int close(int);
|
||||
extern off_t lseek(int, off_t, int);
|
||||
extern loff_t lseek64(int, loff_t, int);
|
||||
|
||||
extern ssize_t read(int, void *, size_t);
|
||||
extern ssize_t write(int, const void *, size_t);
|
||||
extern ssize_t pread(int, void *, size_t, off_t);
|
||||
extern ssize_t pwrite(int, void *, size_t, off_t);
|
||||
|
||||
extern int dup(int);
|
||||
extern int dup2(int, int);
|
||||
extern int fcntl(int, int, ...);
|
||||
extern int ioctl(int, int, ...);
|
||||
extern int flock(int, int);
|
||||
extern int fsync(int);
|
||||
extern int fdatasync(int);
|
||||
extern int ftruncate(int, off_t);
|
||||
|
||||
extern int pause(void);
|
||||
extern unsigned int alarm(unsigned int);
|
||||
extern unsigned int sleep(unsigned int);
|
||||
extern int usleep(unsigned long);
|
||||
|
||||
extern int gethostname(char *, size_t);
|
||||
|
||||
extern int getdtablesize(void);
|
||||
|
||||
extern void *__brk(void *);
|
||||
extern int brk(void *);
|
||||
extern void *sbrk(ptrdiff_t);
|
||||
|
||||
extern int getopt(int, char * const *, const char *);
|
||||
extern char *optarg;
|
||||
extern int optind, opterr, optopt;
|
||||
|
||||
extern int isatty(int);
|
||||
extern char* ttyname(int);
|
||||
extern int ttyname_r(int, char*, size_t);
|
||||
|
||||
extern int acct(const char* filepath);
|
||||
|
||||
static __inline__ int getpagesize(void) {
|
||||
extern unsigned int __page_size;
|
||||
return __page_size;
|
||||
}
|
||||
static __inline__ int __getpageshift(void) {
|
||||
extern unsigned int __page_shift;
|
||||
return __page_shift;
|
||||
}
|
||||
|
||||
extern int sysconf(int name);
|
||||
|
||||
extern int daemon(int, int);
|
||||
|
||||
/* A special syscall that is only available on the ARM, not x86 function. */
|
||||
extern int cacheflush(long start, long end, long flags);
|
||||
|
||||
extern pid_t tcgetpgrp(int fd);
|
||||
extern int tcsetpgrp(int fd, pid_t _pid);
|
||||
|
||||
#if 0 /* MISSING FROM BIONIC */
|
||||
extern pid_t getsid(pid_t);
|
||||
extern int execvpe(const char *, char * const *, char * const *);
|
||||
extern int execlpe(const char *, const char *, ...);
|
||||
extern int getfsuid(uid_t);
|
||||
extern int setfsuid(uid_t);
|
||||
extern int getlogin_r(char* name, size_t namesize);
|
||||
extern int sethostname(const char *, size_t);
|
||||
extern int getdomainname(char *, size_t);
|
||||
extern int setdomainname(const char *, size_t);
|
||||
#endif /* MISSING */
|
||||
|
||||
/* Used to retry syscalls that can return EINTR. */
|
||||
#define TEMP_FAILURE_RETRY(exp) ({ \
|
||||
typeof (exp) _rc; \
|
||||
do { \
|
||||
_rc = (exp); \
|
||||
} while (_rc == -1 && errno == EINTR); \
|
||||
_rc; })
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _UNISTD_H_ */
|
||||
157
ndk/platforms/android-9/include/wchar.h
Normal file
157
ndk/platforms/android-9/include/wchar.h
Normal file
@@ -0,0 +1,157 @@
|
||||
/*
|
||||
* Copyright (C) 2008 The Android Open Source Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
#ifndef _WCHAR_H_
|
||||
#define _WCHAR_H_
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <stdio.h>
|
||||
|
||||
/* wchar_t is required in stdlib.h according to POSIX */
|
||||
#define __need___wchar_t
|
||||
#include <stddef.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <time.h>
|
||||
#include <malloc.h>
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
/* IMPORTANT: Any code that relies on wide character support is essentially
|
||||
* non-portable and/or broken. the only reason this header exist
|
||||
* is because I'm really a nice guy. However, I'm not nice enough
|
||||
* to provide you with a real implementation. instead wchar_t == char
|
||||
* and all wc functions are stubs to their "normal" equivalent...
|
||||
*/
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
typedef int wint_t;
|
||||
typedef struct { int dummy; } mbstate_t;
|
||||
|
||||
typedef enum {
|
||||
WC_TYPE_INVALID = 0,
|
||||
WC_TYPE_ALNUM,
|
||||
WC_TYPE_ALPHA,
|
||||
WC_TYPE_BLANK,
|
||||
WC_TYPE_CNTRL,
|
||||
WC_TYPE_DIGIT,
|
||||
WC_TYPE_GRAPH,
|
||||
WC_TYPE_LOWER,
|
||||
WC_TYPE_PRINT,
|
||||
WC_TYPE_PUNCT,
|
||||
WC_TYPE_SPACE,
|
||||
WC_TYPE_UPPER,
|
||||
WC_TYPE_XDIGIT,
|
||||
WC_TYPE_MAX
|
||||
} wctype_t;
|
||||
|
||||
#define WCHAR_MAX INT_MAX
|
||||
#define WCHAR_MIN INT_MIN
|
||||
#define WEOF ((wint_t)(-1))
|
||||
|
||||
extern wint_t btowc(int);
|
||||
extern int fwprintf(FILE *, const wchar_t *, ...);
|
||||
extern int fwscanf(FILE *, const wchar_t *, ...);
|
||||
extern int iswalnum(wint_t);
|
||||
extern int iswalpha(wint_t);
|
||||
extern int iswcntrl(wint_t);
|
||||
extern int iswdigit(wint_t);
|
||||
extern int iswgraph(wint_t);
|
||||
extern int iswlower(wint_t);
|
||||
extern int iswprint(wint_t);
|
||||
extern int iswpunct(wint_t);
|
||||
extern int iswspace(wint_t);
|
||||
extern int iswupper(wint_t);
|
||||
extern int iswxdigit(wint_t);
|
||||
extern int iswctype(wint_t, wctype_t);
|
||||
extern wint_t fgetwc(FILE *);
|
||||
extern wchar_t *fgetws(wchar_t *, int, FILE *);
|
||||
extern wint_t fputwc(wchar_t, FILE *);
|
||||
extern int fputws(const wchar_t *, FILE *);
|
||||
extern int fwide(FILE *, int);
|
||||
extern wint_t getwc(FILE *);
|
||||
extern wint_t getwchar(void);
|
||||
extern int mbsinit(const mbstate_t *);
|
||||
extern size_t mbrlen(const char *, size_t, mbstate_t *);
|
||||
extern size_t mbrtowc(wchar_t *, const char *, size_t, mbstate_t *);
|
||||
extern size_t mbsrtowcs(wchar_t *, const char **, size_t, mbstate_t *);
|
||||
extern size_t mbstowcs(wchar_t *, const char *, size_t);
|
||||
extern wint_t putwc(wchar_t, FILE *);
|
||||
extern wint_t putwchar(wchar_t);
|
||||
extern int swprintf(wchar_t *, size_t, const wchar_t *, ...);
|
||||
extern int swscanf(const wchar_t *, const wchar_t *, ...);
|
||||
extern wint_t towlower(wint_t);
|
||||
extern wint_t towupper(wint_t);
|
||||
extern wint_t ungetwc(wint_t, FILE *);
|
||||
extern int vfwprintf(FILE *, const wchar_t *, va_list);
|
||||
extern int vwprintf(const wchar_t *, va_list);
|
||||
extern int vswprintf(wchar_t *, size_t, const wchar_t *, va_list);
|
||||
extern size_t wcrtomb(char *, wchar_t, mbstate_t *);
|
||||
extern wchar_t *wcscat(wchar_t *, const wchar_t *);
|
||||
extern wchar_t *wcschr(const wchar_t *, wchar_t);
|
||||
extern int wcscmp(const wchar_t *, const wchar_t *);
|
||||
extern int wcscoll(const wchar_t *, const wchar_t *);
|
||||
extern wchar_t *wcscpy(wchar_t *, const wchar_t *);
|
||||
extern size_t wcscspn(const wchar_t *, const wchar_t *);
|
||||
extern size_t wcsftime(wchar_t *, size_t, const wchar_t *, const struct tm *);
|
||||
extern size_t wcslen(const wchar_t *);
|
||||
extern wchar_t *wcsncat(wchar_t *, const wchar_t *, size_t);
|
||||
extern int wcsncmp(const wchar_t *, const wchar_t *, size_t);
|
||||
extern wchar_t *wcsncpy(wchar_t *, const wchar_t *, size_t);
|
||||
extern wchar_t *wcspbrk(const wchar_t *, const wchar_t *);
|
||||
extern wchar_t *wcsrchr(const wchar_t *, wchar_t);
|
||||
extern size_t wcsrtombs(char *, const wchar_t **, size_t, mbstate_t *);
|
||||
extern size_t wcsspn(const wchar_t *, const wchar_t *);
|
||||
extern wchar_t *wcsstr(const wchar_t *, const wchar_t *);
|
||||
extern double wcstod(const wchar_t *, wchar_t **);
|
||||
extern wchar_t *wcstok(wchar_t *, const wchar_t *, wchar_t **);
|
||||
extern long int wcstol(const wchar_t *, wchar_t **, int);
|
||||
extern size_t wcstombs(char *, const wchar_t *, size_t);
|
||||
extern unsigned long int wcstoul(const wchar_t *, wchar_t **, int);
|
||||
extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
|
||||
extern int wcswidth(const wchar_t *, size_t);
|
||||
extern size_t wcsxfrm(wchar_t *, const wchar_t *, size_t);
|
||||
extern int wctob(wint_t);
|
||||
extern wctype_t wctype(const char *);
|
||||
extern int wcwidth(wchar_t);
|
||||
extern wchar_t *wmemchr(const wchar_t *, wchar_t, size_t);
|
||||
extern int wmemcmp(const wchar_t *, const wchar_t *, size_t);
|
||||
extern wchar_t *wmemcpy(wchar_t *, const wchar_t *, size_t);
|
||||
extern wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t);
|
||||
extern wchar_t *wmemset(wchar_t *, wchar_t, size_t);
|
||||
extern int wprintf(const wchar_t *, ...);
|
||||
extern int wscanf(const wchar_t *, ...);
|
||||
|
||||
/* No really supported. These are just for making libstdc++-v3 happy. */
|
||||
typedef void *wctrans_t;
|
||||
extern wint_t towctrans(wint_t, wctrans_t);
|
||||
extern wctrans_t wctrans (const char *);
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* _WCHAR_H_ */
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <android/native_activity.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user