blob: 1a58d4de03e40a58bd1ff5204a15a46fad536a5d [file] [log] [blame]
Deepak Panickal429222c2013-10-15 15:46:40 +00001//===-- Platform.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 file is only relevant for Visual C++
Kate Stoneb9c1b512016-09-06 20:57:50 +000011#if defined(_WIN32)
Deepak Panickal429222c2013-10-15 15:46:40 +000012
Deepak Panickal429222c2013-10-15 15:46:40 +000013#include <assert.h>
Kate Stoneb9c1b512016-09-06 20:57:50 +000014#include <process.h>
Hafiz Abid Qadeerbdb51592014-03-12 10:39:46 +000015#include <stdlib.h>
Deepak Panickal429222c2013-10-15 15:46:40 +000016
17#include "Platform.h"
18
Kate Stoneb9c1b512016-09-06 20:57:50 +000019int ioctl(int d, int request, ...) {
20 switch (request) {
21 // request the console windows size
22 case (TIOCGWINSZ): {
23 va_list vl;
24 va_start(vl, request);
25 // locate the window size structure on stack
26 winsize *ws = va_arg(vl, winsize *);
27 // get screen buffer information
28 CONSOLE_SCREEN_BUFFER_INFO info;
29 if (GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &info) ==
30 TRUE)
31 // fill in the columns
32 ws->ws_col = info.dwMaximumWindowSize.X;
33 va_end(vl);
34 return 0;
35 } break;
36 default:
37 assert(!"Not implemented!");
38 }
39 return -1;
Deepak Panickal429222c2013-10-15 15:46:40 +000040}
41
Kate Stoneb9c1b512016-09-06 20:57:50 +000042int kill(pid_t pid, int sig) {
43 // is the app trying to kill itself
44 if (pid == getpid())
45 exit(sig);
46 //
47 assert(!"Not implemented!");
48 return -1;
Deepak Panickal429222c2013-10-15 15:46:40 +000049}
50
Kate Stoneb9c1b512016-09-06 20:57:50 +000051int tcsetattr(int fd, int optional_actions, const struct termios *termios_p) {
52 assert(!"Not implemented!");
53 return -1;
Deepak Panickal429222c2013-10-15 15:46:40 +000054}
55
Kate Stoneb9c1b512016-09-06 20:57:50 +000056int tcgetattr(int fildes, struct termios *termios_p) {
57 // assert( !"Not implemented!" );
58 // error return value (0=success)
59 return -1;
Deepak Panickal429222c2013-10-15 15:46:40 +000060}
61
Deepak Panickal99fbc072014-03-03 15:39:47 +000062#endif