#include <stdlib.h>
#include <unistd.h>
-#include <sys/time.h>
#include <sys/wait.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <mach-o/dyld.h>
#endif
+#ifdef ANDROID
+#include <android/log.h>
+#endif
+
#ifndef PATH_MAX
#warning PATH_MAX undefined
#define PATH_MAX 4096
return -1;
}
int status = -1;
+ int ret;
waitpid(pid, &status, 0);
- return status;
+ if (WIFEXITED(status)) {
+ ret = WEXITSTATUS(status);
+ } else if (WIFSIGNALED(status)) {
+ // match shell return code
+ ret = WTERMSIG(status) + 128;
+ } else {
+ ret = 128;
+ }
+ return ret;
}
}
va_list ap;
va_start(ap, format);
fflush(stdout);
+#ifdef ANDROID
+ __android_log_vprint(ANDROID_LOG_DEBUG, "apitrace", format, ap);
+#else
vfprintf(stderr, format, ap);
+#endif
va_end(ap);
logging = false;
}
-long long
-getTime(void)
-{
- struct timeval tv;
- gettimeofday(&tv, NULL);
- return tv.tv_usec + tv.tv_sec*1000000LL;
-}
+#if defined(__APPLE__)
+long long timeFrequency = 0LL;
+#endif
void
abort(void)