blob: 3842fb6c2a8ed53948233d59a9383d8d65b1d2e6 [file] [log] [blame]
Vince Harron8b335672015-05-12 01:10:56 +00001//===-- LibcGlue.cpp --------------------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// This files adds functions missing from libc on earlier versions of Android
11
12#include <android/api-level.h>
13
Pavel Labathdf7c6992015-06-17 18:38:49 +000014#include <sys/syscall.h>
Pavel Labathdf7c6992015-06-17 18:38:49 +000015
Vince Harron8b335672015-05-12 01:10:56 +000016#if __ANDROID_API__ < 21
17
18#include <sys/types.h>
19#include <sys/stat.h>
20#include <fcntl.h>
Vince Harron8b335672015-05-12 01:10:56 +000021#include <signal.h>
22
23#include "lldb/Host/Time.h"
24
25time_t timegm(struct tm* t)
26{
27 return (time_t) timegm64(t);
28}
29
30int signalfd (int fd, const sigset_t *mask, int flags)
31{
32 return syscall(__NR_signalfd4, fd, mask, _NSIG / 8, flags);
33}
34
35int posix_openpt(int flags)
36{
37 return open("/dev/ptmx", flags);
38}
39
40#endif