Index: content/browser/mac/closure_blocks_leopard_compat.S |
=================================================================== |
--- content/browser/mac/closure_blocks_leopard_compat.S (revision 124212) |
+++ content/browser/mac/closure_blocks_leopard_compat.S (working copy) |
@@ -1,139 +0,0 @@ |
-# Copyright (c) 2011 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-# Definitions of symbols that may be needed at runtime but aren't necessarily |
-# present in the SDK chosen for compilation. |
-# |
-# This file provides symbols for _NSConcreteGlobalBlock and |
-# _NSConcreteStackBlock, normally present in libSystem.dylib and provided by |
-# by libclosure-38/data.c in Mac OS X 10.6 and later. It also provides symbols |
-# for various block runtime functions provided by libclosure-38/runtime.c. |
-# When using the 10.5 SDK, the symbols are not present. This file's definition |
-# can be used with extreme care in an application that needs to use the 10.5 |
-# SDK in conjunction with blocks. |
-# |
-# This file cooperates with the build system to produce a dynamic library |
-# that, when linked against, causes dependents to look in libSystem for the |
-# symbols provided here. It also cooperates with a header that causes |
-# dependents to treat the symbols provided here as weak imports, critical for |
-# the resultant output to be loadable on 10.5. |
- |
-# To simplify things, this file assumes it's being built with the 10.5 SDK, |
-# a deployment target of 10.5, and is producing 32-bit x86 code. Other |
-# combinations are possible, but not interesting for the time being. See |
-# <sys/cdefs.h> for interesting ways that names might be mangled in other |
-# configurations. |
- |
-#include <AvailabilityMacros.h> |
- |
-#if MAC_OS_X_VERSION_MIN_REQUIRED != MAC_OS_X_VERSION_10_5 || \ |
- MAC_OS_X_VERSION_MAX_ALLOWED != MAC_OS_X_VERSION_10_5 || \ |
- !defined(__i386__) |
-#error This file only supports 32-bit x86 code with both SDK and DT set to 10.5 |
-#endif |
- |
-#define DEFINE_GLOBAL_SYMBOL(name) \ |
- .globl name ## ;\ |
- name ## : |
- |
-.text |
- |
-# Mac OS X 10.6.8 libclosure-38/runtime.c |
- |
-DEFINE_GLOBAL_SYMBOL(__Block_copy) |
-DEFINE_GLOBAL_SYMBOL(__Block_release) |
-DEFINE_GLOBAL_SYMBOL(__Block_object_assign) |
-DEFINE_GLOBAL_SYMBOL(__Block_object_dispose) |
- |
-.section __DATA,__data |
- |
-# Mac OS X 10.6.8 libclosure-38/data.c |
- |
-DEFINE_GLOBAL_SYMBOL(__NSConcreteGlobalBlock) |
-DEFINE_GLOBAL_SYMBOL(__NSConcreteStackBlock) |
- |
-# When this file is in use, the linker is expected to link things against both |
-# this file and the real copy of libSystem present in the SDK. When doing so, |
-# the linker is smart enough to produce only one LC_LOAD_DYLIB load command. |
-# However, it's not smart enough to notice that while this file's dylib only |
-# provides weak-imported symbols, the real libSystem's dylib does not. |
-# Consequently, it may produce an LC_LOAD_WEAK_DYLIB load command for |
-# libSystem instead of an ordinary LC_LOAD_DYLIB command. LC_LOAD_WEAK_DYLIB |
-# declares that any symbol offered by the library, and in fact the entire |
-# library, is permitted to be missing at runtime. This is entirely |
-# inappropriate for libSystem. To counteract this problem, this file also |
-# defines some other symbols that libSystem provides. Dependents of this |
-# library are not expected to treat these other symbols as weak imports. In |
-# order for any dependent that links against this library to load it with an |
-# LC_LOAD_DYLIB command instead of an LC_LOAD_WEAK_DYLIB command, this library |
-# must satisfy at least one unresolved non-weak-import symbol required by the |
-# dependent. |
- |
-.text |
- |
-# |exit| is a good one: because it's referenced by crt1.o, ordinary executables |
-# are guaranteed to need this symbol. Unfortunately, there's no such symbol in |
-# dylib1.o that libSystem is expected to provide, so a few other common libc |
-# symbols are thrown into the mix. |
-DEFINE_GLOBAL_SYMBOL(_exit) |
- |
-# Include |close| because well-written programs that use the standard library |
-# are likely to refer to it. Include |open| for good measure because it goes |
-# pretty well with this. Include the stdio abstractions for these functions |
-# as well. |
-DEFINE_GLOBAL_SYMBOL(_close$UNIX2003) |
-DEFINE_GLOBAL_SYMBOL(_open$UNIX2003) |
-DEFINE_GLOBAL_SYMBOL(_fclose) |
-DEFINE_GLOBAL_SYMBOL(_fopen) |
-DEFINE_GLOBAL_SYMBOL(_fdopen) |
-DEFINE_GLOBAL_SYMBOL(_freopen$UNIX2003) |
- |
-# Commonly-used allocation functions. |
-DEFINE_GLOBAL_SYMBOL(_malloc) |
-DEFINE_GLOBAL_SYMBOL(_calloc) |
-DEFINE_GLOBAL_SYMBOL(_realloc) |
-DEFINE_GLOBAL_SYMBOL(_reallocf) |
-DEFINE_GLOBAL_SYMBOL(_valloc) |
-DEFINE_GLOBAL_SYMBOL(_free) |
- |
-# Include |printf|, |fprintf|, |sprintf|, |snprintf|, and |puts|, because |
-# small test programs are likely to refer to one of these. puts is rarely |
-# invoked directly, but the compiler may optimize simple printf calls into |
-# puts calls. |
-DEFINE_GLOBAL_SYMBOL(_printf) |
-DEFINE_GLOBAL_SYMBOL(_fprintf) |
-DEFINE_GLOBAL_SYMBOL(_sprintf) |
-DEFINE_GLOBAL_SYMBOL(_snprintf) |
-DEFINE_GLOBAL_SYMBOL(_puts) |
- |
-# Some <string.h> functions that are commonly used. |
-DEFINE_GLOBAL_SYMBOL(_memcmp) |
-DEFINE_GLOBAL_SYMBOL(_memcpy) |
-DEFINE_GLOBAL_SYMBOL(_memmove) |
-DEFINE_GLOBAL_SYMBOL(_memset) |
-DEFINE_GLOBAL_SYMBOL(_strcasecmp) |
-DEFINE_GLOBAL_SYMBOL(_strcat) |
-DEFINE_GLOBAL_SYMBOL(_strchr) |
-DEFINE_GLOBAL_SYMBOL(_strcmp) |
-DEFINE_GLOBAL_SYMBOL(_strcpy) |
-DEFINE_GLOBAL_SYMBOL(_strdup) |
-DEFINE_GLOBAL_SYMBOL(_strlcat) |
-DEFINE_GLOBAL_SYMBOL(_strlcpy) |
-DEFINE_GLOBAL_SYMBOL(_strlen) |
-DEFINE_GLOBAL_SYMBOL(_strncasecmp) |
-DEFINE_GLOBAL_SYMBOL(_strncat) |
-DEFINE_GLOBAL_SYMBOL(_strncmp) |
-DEFINE_GLOBAL_SYMBOL(_strncpy) |
-DEFINE_GLOBAL_SYMBOL(_strnstr) |
-DEFINE_GLOBAL_SYMBOL(_strstr) |
- |
-# Some data-section symbols that might be referenced. |
- |
-.section __DATA,__data |
- |
-DEFINE_GLOBAL_SYMBOL(___stdinp) |
-DEFINE_GLOBAL_SYMBOL(___stdoutp) |
-DEFINE_GLOBAL_SYMBOL(___stderrp) |
- |
-#undef DEFINE_GLOBAL_SYMBOL |