libdispatch.xcconfig 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. //
  2. // Copyright (c) 2010-2013 Apple Inc. All rights reserved.
  3. //
  4. // @APPLE_APACHE_LICENSE_HEADER_START@
  5. //
  6. // Licensed under the Apache License, Version 2.0 (the "License");
  7. // you may not use this file except in compliance with the License.
  8. // You may obtain a copy of the License at
  9. //
  10. // http://www.apache.org/licenses/LICENSE-2.0
  11. //
  12. // Unless required by applicable law or agreed to in writing, software
  13. // distributed under the License is distributed on an "AS IS" BASIS,
  14. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. // See the License for the specific language governing permissions and
  16. // limitations under the License.
  17. //
  18. // @APPLE_APACHE_LICENSE_HEADER_END@
  19. //
  20. #include "<DEVELOPER_DIR>/Makefiles/CoreOS/Xcode/BSD.xcconfig"
  21. #include "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
  22. SDKROOT = macosx.internal
  23. SUPPORTED_PLATFORMS = macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator
  24. PRODUCT_NAME = libdispatch
  25. EXECUTABLE_PREFIX =
  26. INSTALL_PATH = /usr/lib/system
  27. PUBLIC_HEADERS_FOLDER_PATH = /usr/include/dispatch
  28. PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/dispatch
  29. OS_PUBLIC_HEADERS_FOLDER_PATH = /usr/include/os
  30. OS_PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include/os
  31. HEADER_SEARCH_PATHS = $(PROJECT_DIR) $(PROJECT_DIR)/private $(PROJECT_DIR)/src
  32. LIBRARY_SEARCH_PATHS = $(SDKROOT)/usr/lib/system $(SDKROOT)/usr/local/lib
  33. INSTALLHDRS_SCRIPT_PHASE = YES
  34. ALWAYS_SEARCH_USER_PATHS = NO
  35. USE_HEADERMAP = NO
  36. BUILD_VARIANTS = normal debug profile
  37. ONLY_ACTIVE_ARCH = NO
  38. CLANG_LINK_OBJC_RUNTIME = NO
  39. GCC_C_LANGUAGE_STANDARD = gnu11
  40. CLANG_CXX_LANGUAGE_STANDARD = gnu++11
  41. ENABLE_STRICT_OBJC_MSGSEND = YES
  42. GCC_ENABLE_CPP_EXCEPTIONS = NO
  43. GCC_STRICT_ALIASING = YES
  44. GCC_SYMBOLS_PRIVATE_EXTERN = YES
  45. GCC_ENABLE_PASCAL_STRINGS = NO
  46. GCC_WARN_SHADOW = YES
  47. GCC_WARN_64_TO_32_BIT_CONVERSION = YES
  48. GCC_WARN_ABOUT_RETURN_TYPE = YES
  49. GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES
  50. GCC_WARN_ABOUT_MISSING_NEWLINE = YES
  51. GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES
  52. GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES
  53. GCC_WARN_SIGN_COMPARE = YES
  54. GCC_WARN_STRICT_SELECTOR_MATCH = YES
  55. GCC_WARN_UNDECLARED_SELECTOR = YES
  56. GCC_WARN_UNINITIALIZED_AUTOS = YES
  57. GCC_WARN_UNKNOWN_PRAGMAS = YES
  58. GCC_WARN_UNUSED_FUNCTION = YES
  59. GCC_WARN_UNUSED_LABEL = YES
  60. GCC_WARN_UNUSED_PARAMETER = YES
  61. GCC_WARN_UNUSED_VARIABLE = YES
  62. CLANG_WARN_ASSIGN_ENUM = YES
  63. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES
  64. CLANG_WARN_DOCUMENTATION_COMMENTS = YES
  65. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
  66. CLANG_WARN_EMPTY_BODY = YES
  67. CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES
  68. CLANG_WARN_INFINITE_RECURSION = YES
  69. CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES
  70. CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS = YES
  71. CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES
  72. CLANG_WARN_SUSPICIOUS_MOVE = YES
  73. CLANG_WARN_UNREACHABLE_CODE = YES
  74. CLANG_WARN_UNGUARDED_AVAILABILITY = YES
  75. GCC_TREAT_WARNINGS_AS_ERRORS = YES
  76. GCC_OPTIMIZATION_LEVEL = s
  77. GCC_NO_COMMON_BLOCKS = YES
  78. GCC_PREPROCESSOR_DEFINITIONS = __DARWIN_NON_CANCELABLE=1
  79. STATICLIB_PREPROCESSOR_DEFINITIONS = DISPATCH_VARIANT_STATIC=1 USE_OBJC=0 DISPATCH_USE_DTRACE=0
  80. WARNING_CFLAGS = -Wall -Wextra -Warray-bounds-pointer-arithmetic -Watomic-properties -Wcomma -Wconditional-uninitialized -Wcovered-switch-default -Wdate-time -Wdeprecated -Wdouble-promotion -Wduplicate-enum -Wexpansion-to-defined -Wfloat-equal -Widiomatic-parentheses -Wignored-qualifiers -Wnullable-to-nonnull-conversion -Wobjc-interface-ivars -Wover-aligned -Wpacked -Wpointer-arith -Wselector -Wstatic-in-inline -Wsuper-class-method-mismatch -Wswitch-enum -Wtautological-compare -Wunused -Wno-unknown-warning-option $(NO_WARNING_CFLAGS)
  81. NO_WARNING_CFLAGS = -Wno-pedantic -Wno-bad-function-cast -Wno-c++-compat -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-cast-align -Wno-cast-qual -Wno-disabled-macro-expansion -Wno-documentation-unknown-command -Wno-format-nonliteral -Wno-missing-variable-declarations -Wno-old-style-cast -Wno-padded -Wno-reserved-id-macro -Wno-shift-sign-overflow -Wno-undef -Wno-unreachable-code-aggressive -Wno-unused-macros -Wno-used-but-marked-unused -Wno-vla -Wno-unguarded-availability-new
  82. OTHER_CFLAGS = -fverbose-asm -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders $(PLATFORM_CFLAGS)
  83. OTHER_CFLAGS[arch=i386][sdk=macosx*] = $(OTHER_CFLAGS) -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-exceptions
  84. OTHER_CFLAGS_normal = -momit-leaf-frame-pointer
  85. OTHER_CFLAGS_profile = $(OTHER_CFLAGS_normal) -DDISPATCH_PROFILE=1 -DDISPATCH_PERF_MON=1
  86. OTHER_CFLAGS_debug = -fstack-protector -fno-inline -O0 -DDISPATCH_DEBUG=1 -DOS_DEBUG=1
  87. GENERATE_PROFILING_CODE = NO
  88. DYLIB_CURRENT_VERSION = $(CURRENT_PROJECT_VERSION)
  89. SIM_SUFFIX[sdk=*simulator*] = _sim
  90. DYLIB_LDFLAGS = -umbrella System -nodefaultlibs -ldyld -lcompiler_rt -lsystem$(SIM_SUFFIX)_kernel -lsystem$(SIM_SUFFIX)_platform -lsystem$(SIM_SUFFIX)_pthread -lsystem_malloc -lsystem_c -lsystem_blocks -lunwind
  91. OBJC_LDFLAGS = -Wl,-upward-lobjc
  92. LIBDARWIN_LDFLAGS = -Wl,-upward-lsystem_darwin
  93. LIBDARWIN_LDFLAGS[sdk=*simulator*] =
  94. ORDER_LDFLAGS = -Wl,-order_file,$(SRCROOT)/xcodeconfig/libdispatch.order -Wl,-dirty_data_list,$(SRCROOT)/xcodeconfig/libdispatch.dirty
  95. ORDER_LDFLAGS[sdk=macosx*] = -Wl,-order_file,$(SRCROOT)/xcodeconfig/libdispatch.order
  96. ALIASES_LDFLAGS = -Wl,-alias_list,$(SRCROOT)/xcodeconfig/libdispatch.aliases
  97. OTHER_LDFLAGS = $(OTHER_LDFLAGS) $(LIBDARWIN_LDFLAGS) $(DYLIB_LDFLAGS) $(CR_LDFLAGS) $(OBJC_LDFLAGS) $(ALIASES_LDFLAGS) $(PLATFORM_LDFLAGS) $(ORDER_LDFLAGS)
  98. OTHER_MIGFLAGS = -novouchers
  99. COPY_HEADERS_RUN_UNIFDEF = YES
  100. COPY_HEADERS_UNIFDEF_FLAGS = -U__DISPATCH_BUILDING_DISPATCH__ -U__linux__ -DTARGET_OS_WIN32=0 -U__ANDROID__