mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
[3.13] Backport miscellaneous Android testbed changes (#131985)
Backport miscellaneous Android testbed changes from #125946, but without the Android API version bump.
This commit is contained in:
parent
c318a03b17
commit
24bee4e5cf
3 changed files with 21 additions and 6 deletions
|
@ -75,13 +75,24 @@ for ((i, prefix) in prefixes.withIndex()) {
|
|||
|
||||
|
||||
android {
|
||||
val androidEnvFile = file("../../android-env.sh").absoluteFile
|
||||
|
||||
namespace = "org.python.testbed"
|
||||
compileSdk = 34
|
||||
|
||||
defaultConfig {
|
||||
applicationId = "org.python.testbed"
|
||||
minSdk = 21
|
||||
|
||||
minSdk = androidEnvFile.useLines {
|
||||
for (line in it) {
|
||||
"""api_level:=(\d+)""".toRegex().find(line)?.let {
|
||||
return@useLines it.groupValues[1].toInt()
|
||||
}
|
||||
}
|
||||
throw GradleException("Failed to find API level in $androidEnvFile")
|
||||
}
|
||||
targetSdk = 34
|
||||
|
||||
versionCode = 1
|
||||
versionName = "1.0"
|
||||
|
||||
|
@ -101,7 +112,6 @@ android {
|
|||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
||||
val androidEnvFile = file("../../android-env.sh").absoluteFile
|
||||
ndkVersion = androidEnvFile.useLines {
|
||||
for (line in it) {
|
||||
"""ndk_version=(\S+)""".toRegex().find(line)?.let {
|
||||
|
|
|
@ -34,9 +34,12 @@ typedef struct {
|
|||
int pipe[2];
|
||||
} StreamInfo;
|
||||
|
||||
// The FILE member can't be initialized here because stdout and stderr are not
|
||||
// compile-time constants. Instead, it's initialized immediately before the
|
||||
// redirection.
|
||||
static StreamInfo STREAMS[] = {
|
||||
{stdout, STDOUT_FILENO, ANDROID_LOG_INFO, "native.stdout", {-1, -1}},
|
||||
{stderr, STDERR_FILENO, ANDROID_LOG_WARN, "native.stderr", {-1, -1}},
|
||||
{NULL, STDOUT_FILENO, ANDROID_LOG_INFO, "native.stdout", {-1, -1}},
|
||||
{NULL, STDERR_FILENO, ANDROID_LOG_WARN, "native.stderr", {-1, -1}},
|
||||
{NULL, -1, ANDROID_LOG_UNKNOWN, NULL, {-1, -1}},
|
||||
};
|
||||
|
||||
|
@ -87,6 +90,8 @@ static char *redirect_stream(StreamInfo *si) {
|
|||
JNIEXPORT void JNICALL Java_org_python_testbed_PythonTestRunner_redirectStdioToLogcat(
|
||||
JNIEnv *env, jobject obj
|
||||
) {
|
||||
STREAMS[0].file = stdout;
|
||||
STREAMS[1].file = stderr;
|
||||
for (StreamInfo *si = STREAMS; si->file; si++) {
|
||||
char *error_prefix;
|
||||
if ((error_prefix = redirect_stream(si))) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue