remove compiler-rt's SDKs/linux files?

Alexey Samsonov vonosmas at gmail.com
Tue Nov 11 20:14:05 PST 2014


On Tue, Nov 11, 2014 at 6:48 PM, Saleem Abdulrasool <compnerd at compnerd.org>
wrote:

> On Tue, Nov 11, 2014 at 12:44 PM, Bob Wilson <bob.wilson at apple.com> wrote:
>
>> Is there a reason to keep the stub SDK for Linux? I don’t know if anyone
>> is relying on that, and I can’t test any changes, but now that the stub SDK
>> for Darwin is gone, it might also make sense to remove the one for Linux.
>>
>
> I made a previous change that removed the need for the stub SDK for Linux
> a while ago for the builtins.  Im not sure if anyone is depending on it for
> the sanitizers.  If not, I am more than happy to remove it.
>

No, sanitizers don't depend on SDK. I'm also fine with removing it.


>
>
>> > On Nov 10, 2014, at 11:38 AM, Bob Wilson <bob.wilson at apple.com> wrote:
>> >
>> > Author: bwilson
>> > Date: Mon Nov 10 13:38:15 2014
>> > New Revision: 221621
>> >
>> > URL: http://llvm.org/viewvc/llvm-project?rev=221621&view=rev
>> > Log:
>> > Build Darwin libclang_rt libraries against real SDKs.
>> >
>> > The minimal fake SDK was very useful in allowing us to build for all
>> > Darwin platforms without needing access to the real SDKs, but it did
>> > not support building any of the sanitizer runtimes. It's important to
>> > fix that. As a consequence, if you don't have the iOS SDKs installed,
>> > we will now skip building the iOS-specific libclang_rt libraries.
>> > rdar://problem/18825276
>> >
>> > Removed:
>> >    compiler-rt/trunk/SDKs/darwin/README.txt
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/errno.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/fcntl.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/inttypes.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/limits.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/stdio.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/stdlib.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/string.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/sys/errno.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/sys/fcntl.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/sys/mman.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/sys/stat.h
>> >    compiler-rt/trunk/SDKs/darwin/usr/include/sys/types.h
>> > Modified:
>> >    compiler-rt/trunk/CMakeLists.txt
>> >    compiler-rt/trunk/make/platform/clang_darwin.mk
>> >
>> > Modified: compiler-rt/trunk/CMakeLists.txt
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/CMakeLists.txt?rev=221621&r1=221620&r2=221621&view=diff
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/CMakeLists.txt (original)
>> > +++ compiler-rt/trunk/CMakeLists.txt Mon Nov 10 13:38:15 2014
>> > @@ -160,7 +160,6 @@ include(CompilerRTUtils)
>> > set(COMPILER_RT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
>> > set(COMPILER_RT_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
>> > # Setup custom SDK sysroots.
>> > -set(COMPILER_RT_DARWIN_SDK_SYSROOT
>> ${COMPILER_RT_SOURCE_DIR}/SDKs/darwin)
>> > set(COMPILER_RT_LINUX_SDK_SYSROOT ${COMPILER_RT_SOURCE_DIR}/SDKs/linux)
>> >
>> > set(COMPILER_RT_EXTRA_ANDROID_HEADERS
>> ${COMPILER_RT_SOURCE_DIR}/android/include)
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/README.txt
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/README.txt?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/README.txt (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/README.txt (removed)
>> > @@ -1,3 +0,0 @@
>> > -The Darwin platforms are all similar enough we roll them into one SDK,
>> and use
>> > -preprocessor tricks to get the right definitions for the few things
>> which
>> > -diverge between OS X and iOS.
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/errno.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/errno.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/errno.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/errno.h (removed)
>> > @@ -1,17 +0,0 @@
>> > -/* ===-- errno.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#include <sys/errno.h>
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/fcntl.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/fcntl.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/fcntl.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/fcntl.h (removed)
>> > @@ -1,17 +0,0 @@
>> > -/* ===-- fcntl.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#include <sys/fcntl.h>
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/inttypes.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/inttypes.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/inttypes.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/inttypes.h (removed)
>> > @@ -1,86 +0,0 @@
>> > -/* ===-- inttypes.h - stub SDK header for compiler-rt
>> -----------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __INTTYPES_H__
>> > -#define __INTTYPES_H__
>> > -
>> > -#if __WORDSIZE == 64
>> > -#define __INTTYPE_PRI64__ "l"
>> > -#else
>> > -#define __INTTYPE_PRI64__ "ll"
>> > -#endif
>> > -
>> > -#define PRId8  "hhd"
>> > -#define PRId16 "hd"
>> > -#define PRId32 "d"
>> > -#define PRId64 __INTTYPE_PRI64__ "d"
>> > -
>> > -#define PRIi8  "hhi"
>> > -#define PRIi16 "hi"
>> > -#define PRIi32 "i"
>> > -#define PRIi64 __INTTYPE_PRI64__ "i"
>> > -
>> > -#define PRIo8  "hho"
>> > -#define PRIo16 "ho"
>> > -#define PRIo32 "o"
>> > -#define PRIo64 __INTTYPE_PRI64__ "o"
>> > -
>> > -#define PRIu8  "hhu"
>> > -#define PRIu16 "hu"
>> > -#define PRIu32 "u"
>> > -#define PRIu64 __INTTYPE_PRI64__ "u"
>> > -
>> > -#define PRIx8  "hhx"
>> > -#define PRIx16 "hx"
>> > -#define PRIx32 "x"
>> > -#define PRIx64 __INTTYPE_PRI64__ "x"
>> > -
>> > -#define PRIX8  "hhX"
>> > -#define PRIX16 "hX"
>> > -#define PRIX32 "X"
>> > -#define PRIX64 __INTTYPE_PRI64__ "X"
>> > -
>> > -#define SCNd8  "hhd"
>> > -#define SCNd16 "hd"
>> > -#define SCNd32 "d"
>> > -#define SCNd64 __INTTYPE_PRI64__ "d"
>> > -
>> > -#define SCNi8  "hhi"
>> > -#define SCNi16 "hi"
>> > -#define SCNi32 "i"
>> > -#define SCNi64 __INTTYPE_PRI64__ "i"
>> > -
>> > -#define SCNo8  "hho"
>> > -#define SCNo16 "ho"
>> > -#define SCNo32 "o"
>> > -#define SCNo64 __INTTYPE_PRI64__ "o"
>> > -
>> > -#define SCNu8  "hhu"
>> > -#define SCNu16 "hu"
>> > -#define SCNu32 "u"
>> > -#define SCNu64 __INTTYPE_PRI64__ "u"
>> > -
>> > -#define SCNx8  "hhx"
>> > -#define SCNx16 "hx"
>> > -#define SCNx32 "x"
>> > -#define SCNx64 __INTTYPE_PRI64__ "x"
>> > -
>> > -#define SCNX8  "hhX"
>> > -#define SCNX16 "hX"
>> > -#define SCNX32 "X"
>> > -#define SCNX64 __INTTYPE_PRI64__ "X"
>> > -
>> > -#endif  /* __INTTYPES_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/limits.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/limits.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/limits.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/limits.h (removed)
>> > @@ -1,23 +0,0 @@
>> > -/* ===-- limits.h - stub SDK header for compiler-rt
>> -------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __LIMITS_H__
>> > -#define __LIMITS_H__
>> > -
>> > -/* This is only here as a landing pad for the include_next from the
>> compiler's
>> > -   built-in limits.h. */
>> > -
>> > -#endif /* __LIMITS_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/stdio.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/stdio.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/stdio.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/stdio.h (removed)
>> > @@ -1,90 +0,0 @@
>> > -/* ===-- stdio.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __STDIO_H__
>> > -#define __STDIO_H__
>> > -
>> > -#if defined(__cplusplus)
>> > -extern "C" {
>> > -#endif
>> > -
>> > -typedef struct __sFILE FILE;
>> > -typedef __SIZE_TYPE__ size_t;
>> > -
>> > -/* Determine the appropriate fdopen, fopen(), and fwrite() functions.
>> */
>> > -#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386)
>> > -#    define __FDOPEN_NAME  "_fdopen$UNIX2003"
>> > -#    define __FOPEN_NAME "_fopen$UNIX2003"
>> > -#    define __FWRITE_NAME "_fwrite$UNIX2003"
>> > -#  elif defined(__x86_64__)
>> > -#    define __FDOPEN_NAME  "_fdopen"
>> > -#    define __FOPEN_NAME "_fopen"
>> > -#    define __FWRITE_NAME "_fwrite"
>> > -#  elif defined(__arm) || defined(__arm64)
>> > -#    define __FDOPEN_NAME  "_fdopen"
>> > -#    define __FOPEN_NAME "_fopen"
>> > -#    define __FWRITE_NAME "_fwrite"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting OS X"
>> > -#  endif
>> > -#elif defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386) || defined (__x86_64)
>> > -#    define __FDOPEN_NAME  "_fdopen"
>> > -#    define __FOPEN_NAME "_fopen"
>> > -#    define __FWRITE_NAME "_fwrite"
>> > -#  elif defined(__arm) || defined(__arm64)
>> > -#    define __FDOPEN_NAME  "_fdopen"
>> > -#    define __FOPEN_NAME "_fopen"
>> > -#    define __FWRITE_NAME "_fwrite"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting iOS"
>> > -#  endif
>> > -#else
>> > -#  error "unrecognized architecture for targeting Darwin"
>> > -#endif
>> > -
>> > -#    define stderr __stderrp
>> > -extern FILE *__stderrp;
>> > -
>> > -#ifndef SEEK_SET
>> > -#define      SEEK_SET        0       /* set file offset to offset */
>> > -#endif
>> > -#ifndef SEEK_CUR
>> > -#define      SEEK_CUR        1       /* set file offset to current
>> plus offset */
>> > -#endif
>> > -#ifndef SEEK_END
>> > -#define      SEEK_END        2       /* set file offset to EOF plus
>> offset */
>> > -#endif
>> > -
>> > -int fclose(FILE *);
>> > -int fflush(FILE *);
>> > -FILE *fopen(const char * __restrict, const char * __restrict)
>> __asm(__FOPEN_NAME);
>> > -FILE *fdopen(int, const char *) __asm(__FDOPEN_NAME);
>> > -int fprintf(FILE * __restrict, const char * __restrict, ...);
>> > -int fputc(int, FILE *);
>> > -size_t fwrite(const void * __restrict, size_t, size_t, FILE *
>> __restrict)
>> > -  __asm(__FWRITE_NAME);
>> > -size_t fread(void * __restrict, size_t, size_t, FILE * __restrict);
>> > -long ftell(FILE *);
>> > -int fseek(FILE *, long, int);
>> > -int snprintf(char * __restrict, size_t, const char * __restrict, ...);
>> > -
>> > -#if defined(__cplusplus)
>> > -}
>> > -#endif
>> > -
>> > -#endif /* __STDIO_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/stdlib.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/stdlib.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/stdlib.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/stdlib.h (removed)
>> > @@ -1,32 +0,0 @@
>> > -/* ===-- stdlib.h - stub SDK header for compiler-rt
>> -------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __STDLIB_H__
>> > -#define __STDLIB_H__
>> > -
>> > -#define NULL ((void *)0)
>> > -
>> > -typedef __SIZE_TYPE__ size_t;
>> > -
>> > -void abort(void) __attribute__((__noreturn__));
>> > -int atexit(void (*)(void));
>> > -int atoi(const char *);
>> > -void free(void *);
>> > -char *getenv(const char *);
>> > -void *malloc(size_t);
>> > -void *realloc(void *, size_t);
>> > -
>> > -#endif /* __STDLIB_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/string.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/string.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/string.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/string.h (removed)
>> > @@ -1,52 +0,0 @@
>> > -/* ===-- string.h - stub SDK header for compiler-rt
>> -------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __STRING_H__
>> > -#define __STRING_H__
>> > -
>> > -typedef __SIZE_TYPE__ size_t;
>> > -
>> > -int memcmp(const void *, const void *, size_t);
>> > -void *memcpy(void *, const void *, size_t);
>> > -void *memset(void *, int, size_t);
>> > -char *strcat(char *, const char *);
>> > -char *strcpy(char *, const char *);
>> > -char *strdup(const char *);
>> > -size_t strlen(const char *);
>> > -char *strncpy(char *, const char *, size_t);
>> > -
>> > -/* Determine the appropriate strerror() function. */
>> > -#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386)
>> > -#    define __STRERROR_NAME  "_strerror$UNIX2003"
>> > -#  elif defined(__x86_64__) || defined(__arm) || defined(__arm64)
>> > -#    define __STRERROR_NAME  "_strerror"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting OS X"
>> > -#  endif
>> > -#elif defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386) || defined (__x86_64) || defined(__arm) ||
>> defined(__arm64)
>> > -#    define __STRERROR_NAME  "_strerror"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting iOS"
>> > -#  endif
>> > -#else
>> > -#  error "unrecognized architecture for targeting Darwin"
>> > -#endif
>> > -
>> > -char *strerror(int) __asm(__STRERROR_NAME);
>> > -
>> > -#endif /* __STRING_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/sys/errno.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/sys/errno.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/sys/errno.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/sys/errno.h (removed)
>> > @@ -1,31 +0,0 @@
>> > -/* ===-- errno.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef _SYS_ERRNO_H_
>> > -#define _SYS_ERRNO_H_
>> > -
>> > -#if defined(__cplusplus)
>> > -extern "C" {
>> > -#endif
>> > -
>> > -extern int *__error(void);
>> > -#define errno (*__error())
>> > -
>> > -#if defined(__cplusplus)
>> > -}
>> > -#endif
>> > -
>> > -#endif
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/sys/fcntl.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/sys/fcntl.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/sys/fcntl.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/sys/fcntl.h (removed)
>> > @@ -1,52 +0,0 @@
>> > -/* ===-- fcntl.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef _SYS_FCNTL_H_
>> > -#define _SYS_FCNTL_H_
>> > -
>> > -/* Determine the appropriate open function. */
>> > -#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386)
>> > -#    define __OPEN_NAME  "_open$UNIX2003"
>> > -#  elif defined(__x86_64__)
>> > -#    define __OPEN_NAME  "_open"
>> > -#  elif defined(__arm) || defined(__arm64)
>> > -#    define __OPEN_NAME  "_open"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting OS X"
>> > -#  endif
>> > -#elif defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__)
>> > -#  if defined(__i386) || defined (__x86_64)
>> > -#    define __OPEN_NAME  "_open"
>> > -#  elif defined(__arm) || defined(__arm64)
>> > -#    define __OPEN_NAME  "_open"
>> > -#  else
>> > -#    error "unrecognized architecture for targeting iOS"
>> > -#  endif
>> > -#else
>> > -#  error "unrecognized architecture for targeting Darwin"
>> > -#endif
>> > -
>> > -#define O_RDONLY   0x0000    /* open for reading only */
>> > -#define O_WRONLY   0x0001    /* open for writing only */
>> > -#define O_RDWR     0x0002    /* open for reading and writing */
>> > -#define O_ACCMODE  0x0003    /* mask for above modes */
>> > -
>> > -#define O_CREAT    0x0200    /* create if nonexistent */
>> > -
>> > -int open(const char *, int, ...) __asm(__OPEN_NAME);
>> > -
>> > -#endif /* !_SYS_FCNTL_H_ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/sys/mman.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/sys/mman.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/sys/mman.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/sys/mman.h (removed)
>> > @@ -1,42 +0,0 @@
>> > -/* ===-- mman.h - stub SDK header for compiler-rt
>> ---------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __SYS_MMAN_H__
>> > -#define __SYS_MMAN_H__
>> > -
>> > -typedef __SIZE_TYPE__ size_t;
>> > -
>> > -#define PROT_NONE     0x00
>> > -#define PROT_READ     0x01
>> > -#define PROT_WRITE    0x02
>> > -#define PROT_EXEC     0x04
>> > -
>> > -#define MAP_SHARED    0x0001
>> > -#define MAP_PRIVATE   0x0002
>> > -
>> > -#define MAP_FILE      0x0000
>> > -#define MAP_ANON      0x1000
>> > -
>> > -#define MS_ASYNC      0x0001
>> > -#define MS_INVALIDATE 0x0002
>> > -#define MS_SYNC       0x0010
>> > -
>> > -void *mmap(void *addr, size_t len, int prot, int flags, int fd,
>> > -           long long offset);
>> > -int munmap(void *addr, size_t len);
>> > -int msync(void *addr, size_t len, int flags);
>> > -
>> > -#endif /* __SYS_MMAN_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/sys/stat.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/sys/stat.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/sys/stat.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/sys/stat.h (removed)
>> > @@ -1,25 +0,0 @@
>> > -/* ===-- stat.h - stub SDK header for compiler-rt
>> ---------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __SYS_STAT_H__
>> > -#define __SYS_STAT_H__
>> > -
>> > -typedef unsigned short uint16_t;
>> > -typedef uint16_t mode_t;
>> > -
>> > -int mkdir(const char *, mode_t);
>> > -
>> > -#endif /* __SYS_STAT_H__ */
>> >
>> > Removed: compiler-rt/trunk/SDKs/darwin/usr/include/sys/types.h
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/SDKs/darwin/usr/include/sys/types.h?rev=221620&view=auto
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/SDKs/darwin/usr/include/sys/types.h (original)
>> > +++ compiler-rt/trunk/SDKs/darwin/usr/include/sys/types.h (removed)
>> > @@ -1,20 +0,0 @@
>> > -/* ===-- types.h - stub SDK header for compiler-rt
>> --------------------------===
>> > - *
>> > - *                     The LLVM Compiler Infrastructure
>> > - *
>> > - * This file is dual licensed under the MIT and the University of
>> Illinois Open
>> > - * Source Licenses. See LICENSE.TXT for details.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - *
>> > - * This is a stub SDK header file. This file is not part of the
>> interface of
>> > - * this library nor an official version of the appropriate SDK header.
>> It is
>> > - * intended only to stub the features of this header required by
>> compiler-rt.
>> > - *
>> > - *
>> ===-----------------------------------------------------------------------===
>> > - */
>> > -
>> > -#ifndef __SYS_TYPES_H__
>> > -#define __SYS_TYPES_H__
>> > -
>> > -#endif /* __SYS_TYPES_H__ */
>> >
>> > Modified: compiler-rt/trunk/make/platform/clang_darwin.mk
>> > URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/make/platform/clang_darwin.mk?rev=221621&r1=221620&r2=221621&view=diff
>> >
>> ==============================================================================
>> > --- compiler-rt/trunk/make/platform/clang_darwin.mk (original)
>> > +++ compiler-rt/trunk/make/platform/clang_darwin.mk Mon Nov 10
>> 13:38:15 2014
>> > @@ -6,16 +6,21 @@
>> >
>> > Description := Static runtime libraries for clang/Darwin.
>> >
>> > -# A function that ensures we don't try to build for architectures that
>> we
>> > -# don't have working toolchains for.
>> > +# A function that ensures we don't try to build for architectures and
>> SDKs
>> > +# that we don't have working toolchains for. Arguments:
>> > +# (1): List of architectures
>> > +# (2): Library name
>> > +# (3): SDK path
>> > +# The result is a possibly empty subset of the architectures from
>> argument 1.
>> > CheckArches = \
>> >   $(shell \
>> >     result=""; \
>> > -    for arch in $(1); do \
>> > +    if [ "X$(3)" != X ]; then \
>> > +     for arch in $(1); do \
>> >       if $(CC) -arch $$arch -c \
>> >           -integrated-as \
>> >           $(ProjSrcRoot)/make/platform/clang_darwin_test_input.c \
>> > -          -isysroot $(ProjSrcRoot)/SDKs/darwin \
>> > +          -isysroot $(3) \
>> >           -o /dev/null > /dev/null 2> /dev/null; then \
>> >         if $(LD) -v 2>&1 | grep "configured to support" \
>> >            | tr ' ' '\n' | grep "^$$arch$$" >/dev/null 2>/dev/null;
>> then \
>> > @@ -30,7 +35,8 @@ CheckArches = \
>> >           "warning: clang_darwin.mk: dropping arch '$$arch' from lib
>> '$(2)'"; \
>> >         printf 1>&2 " (clang does not support it)\n"; \
>> >       fi; \
>> > -    done; \
>> > +     done; \
>> > +    fi; \
>> >     echo $$result)
>> >
>> > XCRun = \
>> > @@ -53,6 +59,10 @@ STRIP    := $(call XCRun,strip)
>> > LIPO     := $(call XCRun,lipo)
>> > DSYMUTIL := $(call XCRun,dsymutil)
>> >
>> > +OSX_SDK := $(call XCRunSdkPath,macosx)
>> > +IOS_SDK := $(call XCRunSdkPath,iphoneos)
>> > +IOSSIM_SDK := $(call XCRunSdkPath,iphonesimulator)
>> > +
>> > Configs :=
>> > UniversalArchs :=
>> >
>> > @@ -60,51 +70,53 @@ UniversalArchs :=
>> > # still be referenced from Darwin system headers. This symbol is only
>> ever
>> > # needed on i386.
>> > Configs += eprintf
>> > -UniversalArchs.eprintf := $(call CheckArches,i386,eprintf)
>> > +UniversalArchs.eprintf := $(call CheckArches,i386,eprintf,$(OSX_SDK))
>> >
>> > # Configuration for targeting 10.4. We need a few functions missing from
>> > # libgcc_s.10.4.dylib. We only build x86 slices since clang doesn't
>> really
>> > # support targeting PowerPC.
>> > Configs += 10.4
>> > -UniversalArchs.10.4 := $(call CheckArches,i386 x86_64,10.4)
>> > +UniversalArchs.10.4 := $(call CheckArches,i386 x86_64,10.4,$(OSX_SDK))
>> >
>> > # Configuration for targeting iOS for a couple of functions that didn't
>> > # make it into libSystem.
>> > Configs += ios
>> > -UniversalArchs.ios := $(call CheckArches,i386 x86_64 armv7 arm64,ios)
>> > +UniversalArchs.ios := $(call CheckArches,i386 x86_64,ios,$(IOSSIM_SDK))
>> > +UniversalArchs.ios += $(call CheckArches,armv7 arm64,ios,$(IOS_SDK))
>> >
>> > # Configuration for targeting OSX. These functions may not be in
>> libSystem
>> > # so we should provide our own.
>> > Configs += osx
>> > -UniversalArchs.osx := $(call CheckArches,i386 x86_64 x86_64h,osx)
>> > +UniversalArchs.osx := $(call CheckArches,i386 x86_64
>> x86_64h,osx,$(OSX_SDK))
>> >
>> > # Configuration for use with kernel/kexts.
>> > Configs += cc_kext
>> > -UniversalArchs.cc_kext := $(call CheckArches,armv7 arm64 i386 x86_64
>> x86_64h,cc_kext)
>> > +UniversalArchs.cc_kext := $(call CheckArches,i386 x86_64
>> x86_64h,cc_kext,$(OSX_SDK))
>> > +UniversalArchs.cc_kext += $(call CheckArches,armv7
>> arm64,cc_kext,$(IOS_SDK))
>> >
>> > # Configuration for use with kernel/kexts for iOS 5.0 and earlier
>> (which used
>> > -# a different code generation strategy).
>> > +# a different code generation strategy). Note: the x86_64 slice is
>> unused but
>> > +# it avoids build problems (see pr14013).
>> > Configs += cc_kext_ios5
>> > -UniversalArchs.cc_kext_ios5 := $(call CheckArches,x86_64
>> armv7,cc_kext_ios5)
>> > +UniversalArchs.cc_kext_ios5 := $(call
>> CheckArches,x86_64,cc_kext_ios5,$(IOSSIM_SDK))
>> > +UniversalArchs.cc_kext_ios5 += $(call
>> CheckArches,armv7,cc_kext_ios5,$(IOS_SDK))
>> >
>> > # Configurations which define the profiling support functions.
>> > Configs += profile_osx
>> > -UniversalArchs.profile_osx := $(call CheckArches,i386 x86_64
>> x86_64h,profile_osx)
>> > +UniversalArchs.profile_osx := $(call CheckArches,i386 x86_64
>> x86_64h,profile_osx,$(OSX_SDK))
>> > Configs += profile_ios
>> > -UniversalArchs.profile_ios := $(call CheckArches,i386 x86_64 armv7
>> arm64,profile_ios)
>> > +UniversalArchs.profile_ios := $(call CheckArches,i386
>> x86_64,profile_ios,$(IOSSIM_SDK))
>> > +UniversalArchs.profile_ios += $(call CheckArches,armv7
>> arm64,profile_ios,$(IOS_SDK))
>> >
>> > # Configurations which define the ASAN support functions.
>> > Configs += asan_osx_dynamic
>> > -UniversalArchs.asan_osx_dynamic := $(call CheckArches,i386 x86_64
>> x86_64h,asan_osx_dynamic)
>> > +UniversalArchs.asan_osx_dynamic := $(call CheckArches,i386 x86_64
>> x86_64h,asan_osx_dynamic,$(OSX_SDK))
>> >
>> > -IOSSIM_SDK_PATH := $(call XCRunSdkPath,iphonesimulator)
>> > -ifneq ($(IOSSIM_SDK_PATH),)
>> > Configs += asan_iossim_dynamic
>> > -UniversalArchs.asan_iossim_dynamic := $(call CheckArches,i386
>> x86_64,asan_iossim_dynamic)
>> > -endif
>> > +UniversalArchs.asan_iossim_dynamic := $(call CheckArches,i386
>> x86_64,asan_iossim_dynamic,$(IOSSIM_SDK))
>> >
>> > Configs += ubsan_osx
>> > -UniversalArchs.ubsan_osx := $(call CheckArches,i386 x86_64
>> x86_64h,ubsan_osx)
>> > +UniversalArchs.ubsan_osx := $(call CheckArches,i386 x86_64
>> x86_64h,ubsan_osx,$(OSX_SDK))
>> >
>> > # Darwin 10.6 has a bug in cctools that makes it unable to use ranlib
>> on our ARM
>> > # object files. If we are on that platform, strip out all ARM archs. We
>> still
>> > @@ -119,17 +131,18 @@ endif
>> >
>> > # If RC_SUPPORTED_ARCHS is defined, treat it as a list of the
>> architectures we
>> > # are intended to support and limit what we try to build to that.
>> > -#
>> > -# We make sure to remove empty configs if we end up dropping all the
>> requested
>> > -# archs for a particular config.
>> > ifneq ($(RC_SUPPORTED_ARCHS),)
>> > $(foreach config,$(Configs),\
>> >   $(call Set,UniversalArchs.$(config),\
>> > -     $(filter $(RC_SUPPORTED_ARCHS),$(UniversalArchs.$(config))))\
>> > -  $(if $(UniversalArchs.$(config)),,\
>> > -     $(call Set,Configs,$(filter-out $(config),$(Configs)))))
>> > +     $(filter $(RC_SUPPORTED_ARCHS),$(UniversalArchs.$(config))))
>> > endif
>> >
>> > +# Remove empty configs if we end up dropping all the requested
>> > +# archs for a particular config.
>> > +$(foreach config,$(Configs),\
>> > +  $(if $(strip $(UniversalArchs.$(config))),,\
>> > +     $(call Set,Configs,$(filter-out $(config),$(Configs)))))
>> > +
>> > ###
>> >
>> > # Forcibly strip off any -arch, as that totally breaks our universal
>> support.
>> > @@ -147,28 +160,31 @@ IOS_DEPLOYMENT_ARGS := -mios-version-min
>> > IOS6_DEPLOYMENT_ARGS := -mios-version-min=6.0
>> > IOSSIM_DEPLOYMENT_ARGS := -mios-simulator-version-min=1.0
>> >
>> > -# Use our stub SDK as the sysroot to support more portable building.
>> > -OSX_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
>> > -IOS_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
>> > -IOS6_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
>> > -IOSSIM_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
>> > +OSX_DEPLOYMENT_ARGS += -isysroot $(OSX_SDK)
>> > +IOS_DEPLOYMENT_ARGS += -isysroot $(IOS_SDK)
>> > +IOS6_DEPLOYMENT_ARGS += -isysroot $(IOS_SDK)
>> > +IOSSIM_DEPLOYMENT_ARGS += -isysroot $(IOSSIM_SDK)
>> >
>> > CFLAGS.eprintf                := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
>> > CFLAGS.10.4           := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
>> > -# FIXME: We can't build ASAN with our stub SDK yet.
>> > +
>> > CFLAGS.asan_osx_dynamic := \
>> > -     $(CFLAGS) -mmacosx-version-min=10.7 -fno-builtin \
>> > +     $(CFLAGS) -mmacosx-version-min=10.7 \
>> > +     -isysroot $(OSX_SDK) \
>> > +     -fno-builtin \
>> >       -gline-tables-only \
>> >       -DMAC_INTERPOSE_FUNCTIONS=1
>> >
>> > CFLAGS.asan_iossim_dynamic := \
>> >       $(CFLAGS) -mios-simulator-version-min=7.0 \
>> > -        -isysroot $(IOSSIM_SDK_PATH) \
>> > +        -isysroot $(IOSSIM_SDK) \
>> >         -fno-builtin \
>> >       -gline-tables-only \
>> >       -DMAC_INTERPOSE_FUNCTIONS=1
>> >
>> > -CFLAGS.ubsan_osx := $(CFLAGS) -mmacosx-version-min=10.6 -fno-builtin
>> > +CFLAGS.ubsan_osx := $(CFLAGS) -mmacosx-version-min=10.6 \
>> > +     -isysroot $(OSX_SDK) \
>> > +     -fno-builtin
>> >
>> > CFLAGS.ios.i386               := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
>> > CFLAGS.ios.x86_64     := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
>> > @@ -209,7 +225,7 @@ SHARED_LIBRARY.asan_iossim_dynamic := 1
>> > # or -Wl,-syslibroot.
>> > LDFLAGS.asan_iossim_dynamic := -undefined dynamic_lookup -install_name
>> @rpath/libclang_rt.asan_iossim_dynamic.dylib \
>> >   -Wl,-ios_simulator_version_min,7.0.0 \
>> > -  -mios-simulator-version-min=7.0 -isysroot $(IOSSIM_SDK_PATH)
>> > +  -mios-simulator-version-min=7.0 -isysroot $(IOSSIM_SDK)
>> >
>> > FUNCTIONS.eprintf := eprintf
>> > FUNCTIONS.10.4 := eprintf floatundidf floatundisf floatundixf
>> >
>> >
>> > _______________________________________________
>> > llvm-commits mailing list
>> > llvm-commits at cs.uiuc.edu
>> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
>
> --
> Saleem Abdulrasool
> compnerd (at) compnerd (dot) org
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>


-- 
Alexey Samsonov
vonosmas at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141111/055fac1e/attachment.html>


More information about the llvm-commits mailing list