/* Foreign builtins. */
-#include "rust_globals.h"
#include "vg/valgrind.h"
+#include <stdint.h>
#include <time.h>
-
-#ifdef __APPLE__
- #include <TargetConditionals.h>
- #include <mach/mach_time.h>
-
- #if (TARGET_OS_IPHONE)
- extern char **environ;
- #else
- #include <crt_externs.h>
- #endif
-#endif
+#include <string.h>
+#include <assert.h>
+#include <stdlib.h>
#if !defined(__WIN32__)
#include <sys/time.h>
+#include <sys/types.h>
+#include <dirent.h>
+#include <signal.h>
+#include <unistd.h>
+#include <pthread.h>
+#else
+#include <windows.h>
+#include <wincrypt.h>
+#include <stdio.h>
+#include <tchar.h>
#endif
-#ifdef __FreeBSD__
-extern char **environ;
+#ifdef __APPLE__
+#include <TargetConditionals.h>
+#include <mach/mach_time.h>
+
+#if !(TARGET_OS_IPHONE)
+#include <crt_externs.h>
+#endif
#endif
#ifdef __ANDROID__
}
#endif
+#ifdef __APPLE__
+#if (TARGET_OS_IPHONE)
+extern char **environ;
+#endif
+#endif
+
+#if defined(__FreeBSD__) || defined(__linux__) || defined(__ANDROID__)
+extern char **environ;
+#endif
+
#if defined(__WIN32__)
char**
rust_env_pairs() {
}
#ifndef _WIN32
-#include <sys/types.h>
-#include <dirent.h>
DIR*
rust_opendir(char *dirname) {
#else
-#include <signal.h>
-#include <unistd.h>
-
void
rust_unset_sigprocmask() {
// this can't be safely converted to rust code because the
+++ /dev/null
-// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
-// file at the top-level directory of this distribution and at
-// http://rust-lang.org/COPYRIGHT.
-//
-// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-// option. This file may not be copied, modified, or distributed
-// except according to those terms.
-
-#ifndef RUST_GLOBALS_H
-#define RUST_GLOBALS_H
-
-#if defined(__cplusplus)
-#define INLINE inline
-#elif defined(_MSC_VER) || defined(__GNUC__)
-#define INLINE __inline__
-#else
-#define INLINE inline
-#endif
-
-#if defined(__GNUC__)
-#define ALWAYS_INLINE __attribute__((always_inline)) INLINE
-#elif defined(_MSC_VER)
-#define ALWAYS_INLINE __forceinline
-#else
-#define ALWAYS_INLINE INLINE
-#endif
-
-#ifndef __STDC_LIMIT_MACROS
-#define __STDC_LIMIT_MACROS 1
-#endif
-
-#ifndef __STDC_CONSTANT_MACROS
-#define __STDC_CONSTANT_MACROS 1
-#endif
-
-#ifndef __STDC_FORMAT_MACROS
-#define __STDC_FORMAT_MACROS 1
-#endif
-
-#ifndef _GNU_SOURCE
-#define _GNU_SOURCE 1
-#endif
-
-#define ERROR 0
-
-#include <stdlib.h>
-#include <stdint.h>
-#include <inttypes.h>
-#include <stdarg.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <string.h>
-#include <fcntl.h>
-#include <math.h>
-#include <assert.h>
-
-#if defined(__WIN32__)
-// Prevent unnecessary #include's from <windows.h>
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-// Prevent defining min and max macro
-#ifndef NOMINMAX
-#define NOMINMAX
-#endif
-#if defined(__cplusplus)
-extern "C" {
-#endif
-#include <windows.h>
-#include <tchar.h>
-#include <wincrypt.h>
-#if defined(__cplusplus)
-}
-#endif
-#elif defined(__GNUC__)
-#include <unistd.h>
-#include <dlfcn.h>
-#include <pthread.h>
-#include <errno.h>
-#include <dirent.h>
-
-#define GCC_VERSION (__GNUC__ * 10000 \
- + __GNUC_MINOR__ * 100 \
- + __GNUC_PATCHLEVEL__)
-
-#else
-#error "Platform not supported."
-#endif
-
-#ifdef __i386__
-// 'cdecl' ABI only means anything on i386
-#ifdef __WIN32__
-#ifndef CDECL
-#define CDECL __cdecl
-#endif
-#ifndef FASTCALL
-#endif
-#else
-#define CDECL __attribute__((cdecl))
-#endif
-#else
-#define CDECL
-#endif
-
-#define CHECKED(call) \
- { \
- int res = (call); \
- if(0 != res) { \
- fprintf(stderr, \
- #call " failed in %s at line %d, result = %d " \
- "(%s) \n", \
- __FILE__, __LINE__, res, strerror(res)); \
- abort(); \
- } \
- }
-
-#endif /* RUST_GLOBALS_H */